Files
2026-06-04 11:42:34 +02:00

77 lines
2.3 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.Remoting.Activation;
namespace System.Runtime.Remoting.Messaging
{
// Token: 0x020003E3 RID: 995
internal class ConstructionCallDictionary : MethodDictionary
{
// Token: 0x060026EF RID: 9967 RVA: 0x00080508 File Offset: 0x0007E708
public ConstructionCallDictionary(IConstructionCallMessage message)
: base(message)
{
base.MethodKeys = ConstructionCallDictionary.InternalKeys;
}
// Token: 0x060026F1 RID: 9969 RVA: 0x00080590 File Offset: 0x0007E790
protected override object GetMethodProperty(string key)
{
switch (key)
{
case "__Activator":
return ((IConstructionCallMessage)this._message).Activator;
case "__CallSiteActivationAttributes":
return ((IConstructionCallMessage)this._message).CallSiteActivationAttributes;
case "__ActivationType":
return ((IConstructionCallMessage)this._message).ActivationType;
case "__ContextProperties":
return ((IConstructionCallMessage)this._message).ContextProperties;
case "__ActivationTypeName":
return ((IConstructionCallMessage)this._message).ActivationTypeName;
}
return base.GetMethodProperty(key);
}
// Token: 0x060026F2 RID: 9970 RVA: 0x00080688 File Offset: 0x0007E888
protected override void SetMethodProperty(string key, object value)
{
if (key != null)
{
if (ConstructionCallDictionary.<>f__switch$map24 == null)
{
ConstructionCallDictionary.<>f__switch$map24 = new Dictionary<string, int>(5)
{
{ "__Activator", 0 },
{ "__CallSiteActivationAttributes", 1 },
{ "__ActivationType", 1 },
{ "__ContextProperties", 1 },
{ "__ActivationTypeName", 1 }
};
}
int num;
if (ConstructionCallDictionary.<>f__switch$map24.TryGetValue(key, out num))
{
if (num == 0)
{
((IConstructionCallMessage)this._message).Activator = (IActivator)value;
return;
}
if (num == 1)
{
throw new ArgumentException("key was invalid");
}
}
}
base.SetMethodProperty(key, value);
}
// Token: 0x04000F39 RID: 3897
public static string[] InternalKeys = new string[]
{
"__Uri", "__MethodName", "__TypeName", "__MethodSignature", "__Args", "__CallContext", "__CallSiteActivationAttributes", "__ActivationType", "__ContextProperties", "__Activator",
"__ActivationTypeName"
};
}
}