mscorlib(4.0.0.0) API with additions
ConstructionCall.cs
1 using System.Collections;
5 using System.Security;
6 
8 {
10  [Serializable]
11  [SecurityCritical]
12  [CLSCompliant(false)]
13  [ComVisible(true)]
15  {
16  internal Type _activationType;
17 
18  internal string _activationTypeName;
19 
20  internal IList _contextProperties;
21 
22  internal object[] _callSiteActivationAttributes;
23 
24  internal IActivator _activator;
25 
28  public object[] CallSiteActivationAttributes
29  {
30  [SecurityCritical]
31  get
32  {
33  return _callSiteActivationAttributes;
34  }
35  }
36 
39  public Type ActivationType
40  {
41  [SecurityCritical]
42  get
43  {
44  if (_activationType == null && _activationTypeName != null)
45  {
46  _activationType = RemotingServices.InternalGetTypeFromQualifiedTypeName(_activationTypeName, partialFallback: false);
47  }
48  return _activationType;
49  }
50  }
51 
54  public string ActivationTypeName
55  {
56  [SecurityCritical]
57  get
58  {
59  return _activationTypeName;
60  }
61  }
62 
66  {
67  [SecurityCritical]
68  get
69  {
70  if (_contextProperties == null)
71  {
72  _contextProperties = new ArrayList();
73  }
74  return _contextProperties;
75  }
76  }
77 
80  public override IDictionary Properties
81  {
82  [SecurityCritical]
83  get
84  {
85  lock (this)
86  {
87  if (InternalProperties == null)
88  {
90  }
91  if (ExternalProperties == null)
92  {
93  ExternalProperties = new CCMDictionary(this, InternalProperties);
94  }
95  return ExternalProperties;
96  }
97  }
98  }
99 
102  public IActivator Activator
103  {
104  [SecurityCritical]
105  get
106  {
107  return _activator;
108  }
109  [SecurityCritical]
110  set
111  {
112  _activator = value;
113  }
114  }
115 
118  public ConstructionCall(Header[] headers)
119  : base(headers)
120  {
121  }
122 
126  : base(m)
127  {
128  }
129 
130  internal ConstructionCall(SerializationInfo info, StreamingContext context)
131  : base(info, context)
132  {
133  }
134 
135  [SecurityCritical]
136  internal override bool FillSpecialHeader(string key, object value)
137  {
138  if (key != null)
139  {
140  if (key.Equals("__ActivationType"))
141  {
142  _activationType = null;
143  }
144  else if (key.Equals("__ContextProperties"))
145  {
146  _contextProperties = (IList)value;
147  }
148  else if (key.Equals("__CallSiteActivationAttributes"))
149  {
150  _callSiteActivationAttributes = (object[])value;
151  }
152  else if (key.Equals("__Activator"))
153  {
154  _activator = (IActivator)value;
155  }
156  else
157  {
158  if (!key.Equals("__ActivationTypeName"))
159  {
160  return base.FillSpecialHeader(key, value);
161  }
162  _activationTypeName = (string)value;
163  }
164  }
165  return true;
166  }
167  }
168 }
IDictionary InternalProperties
An T:System.Collections.IDictionary interface that represents a collection of the remoting message's ...
Definition: MethodCall.cs:45
Represents the construction call request of an object.
Represents a non-generic collection of objects that can be individually accessed by index.
Definition: IList.cs:8
Defines the method call message interface.
Definition: __Canon.cs:3
Implements the T:System.Runtime.Remoting.Messaging.IMethodCallMessage interface to create a request m...
Definition: MethodCall.cs:19
Describes the source and destination of a given serialized stream, and provides an additional caller-...
object [] CallSiteActivationAttributes
Gets the call site activation attributes for the remote object.
Contains methods to create types of objects locally or remotely, or obtain references to existing rem...
Definition: Activator.cs:21
IDictionary ExternalProperties
An T:System.Collections.IDictionary interface that represents a collection of the remoting message's ...
Definition: MethodCall.cs:42
Represents a collection of key/value pairs that are organized based on the hash code of the key....
Definition: Hashtable.cs:17
Type ActivationType
Gets the type of the remote object to activate.
Defines the out-of-band data for a call.
Definition: Header.cs:8
Represents type declarations: class types, interface types, array types, value types,...
Definition: Type.cs:18
ConstructionCall(IMessage m)
Initializes a new instance of the T:System.Runtime.Remoting.Messaging.ConstructionCall class by copyi...
Defines the method message interface.
Stores all the data needed to serialize or deserialize an object. This class cannot be inherited.
IList ContextProperties
Gets a list of properties that define the context in which the remote object is to be created.
Contains communication data sent between cooperating message sinks.
Definition: IMessage.cs:9
string ActivationTypeName
Gets the full type name of the remote object to activate.
Specifies that the class can be serialized.
ConstructionCall(Header[] headers)
Initializes a new instance of the T:System.Runtime.Remoting.Messaging.ConstructionCall class from an ...
Provides several methods for using and publishing remoted objects and proxies. This class cannot be i...
Represents a nongeneric collection of key/value pairs.
Definition: IDictionary.cs:8
Implements the T:System.Runtime.Remoting.Activation.IConstructionCallMessage interface to create a re...
override IDictionary Properties
Gets an T:System.Collections.IDictionary interface that represents a collection of the remoting messa...
Provides the basic functionality for a remoting activator class.
Definition: IActivator.cs:8
Implements the T:System.Collections.IList interface using an array whose size is dynamically increase...
Definition: ArrayList.cs:14