3.2.5.1.5.3 Marshaling Server Objects and Proxy Instances
A Data Value that is being serialized can contain a Server Object or a Proxy. These MUST be serialized as ObjRef instances.
In case of a Server Object, the Server Object MUST be marshaled as specified in the Marshal Server Object section if it is not already marshaled. An implementation MUST provide a valid Server Object URI but MAY use any algorithm to create it.<45>
For a Data Value containing a Server Object or MSO Proxy instance, an ObjRef MUST be constructed as specified in the following table.
Field |
Value |
---|---|
uri |
Server Object URI of the Server Object |
typeInfo |
Names of the Server Type, its Base Classes, and interfaces as specified in the TypeInfo section |
objRefFlags |
0 |
fIsMarshalled |
True |
ChannelInfo |
Must be initialized as specified in the ChannelInfo section with each instance of ChannelData containing a Channel URI for each initialized channel. |
For a Data Value containing an SAO Proxy, an ObjRef MUST be constructed as specified in the following table.
Field |
Value |
---|---|
uri |
Request-URI for the Proxy |
typeInfo |
Names of the Server Type, its Base Classes, and interfaces as specified in the TypeInfo section |
objRefFlags |
2 |
fIsMarshalled |
True |
ChannelInfo |