IROBinMessage

Overview

IROMessage descendant, contains methods declarations for TROBinMessage.

Location


 

ApplyAttributes2    (declared in IROMessage)

Sets SOAP attributes (SOAP message only)

procedure ApplyAttributes2

ApplyAttributes2_Transport    (declared in IROMessage)

Sets transport related attributes (SOAP message only)

procedure ApplyAttributes2_Transport(aTransport: IROTransport)

Parameters:

  • aTransport: Transport channel

ClientID    (declared in IROMessage)

Provides access to the ClientID read from the message. See event dispatching for a usage example.

property ClientID: TGUID read write

CompressionBufferSize

Size of the buffer used for compression (default is 256 kilobytes).

Increasing the buffer increases compression performance for large messages, but it also increases memory footprint. The best performance is reached with a buffer that's large enough for the maximum expected message size.

property CompressionBufferSize: Integer read write

Finalize    (declared in IROMessage)

Ensures that the message content is complete before sending it by performing all necessary final processing. This method is called after all parameters have been written to a message and before the message will be sent. It should perform all necessary wrap-up to ensure that a subsequent call to WriteToStream will produce a complete message.

procedure Finalize

FreeStream    (declared in IROMessage)

Destroys stream

procedure FreeStream

GetEnvelopes    (declared in IROMessage)

Envelopes collection.

function GetEnvelopes: TCollection

Initialize (IROTransport, string, string, string, TMessageType)  overload    (declared in IROMessage)

Initializes the message with the given parameters.

procedure Initialize(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string; aType: TMessageType)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name
  • aType: Message type

Initialize (IROTransport, string, string, TMessageType)  overload    (declared in IROMessage)

Initializes the message with the given parameters.

procedure Initialize(const aTransport: IROTransport; const anInterfaceName: string; const aMessageName: string; aType: TMessageType)

Parameters:

  • aTransport: IROTransport
  • anInterfaceName: Interface name
  • aMessageName: Message name
  • aType: Message type

InitializeEventMessage    (declared in IROMessage)

Initializes an Event message with the given parameters.

procedure InitializeEventMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InitializeExceptionMessage    (declared in IROMessage)

Initializes an Exception message with the given parameters.

procedure InitializeExceptionMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InitializeRead    (declared in IROMessage)

Performs additional initialization before reading.

procedure InitializeRead(const aTransport: IROTransport)

Parameters:


InitializeRequestMessage    (declared in IROMessage)

Initializes a mtRequest message with the given parameters.

procedure InitializeRequestMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InitializeResponseMessage    (declared in IROMessage)

Initializes a mtResponse message with the given parameters.

procedure InitializeResponseMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InterfaceName    (declared in IROMessage)

Contains the name of the interface or service that is to be or was called on the server.

property InterfaceName: string read write

MaxEventsPerPoll    (declared in IROMessage)

property MaxEventsPerPoll: Integer read

MessageName    (declared in IROMessage)

Contains the name of the message (i.e. the method name) that is to be or was called on the server.

property MessageName: string read write

MessageType    (declared in IROMessage)

Type of the message represented by the message instance.

property MessageType: TMessageType read

MinSizeForCompression

Minimum size for a message before compression is applied (default is 4096 bytes). Messages below this threshold are sent uncompressed, as the overhead of compressing and decompressing the data would likely outweigh the gain of having an only slightly smaller packet on the network.

property MinSizeForCompression: Integer read write

Read    (declared in IROMessage)

The general method to read any data.

procedure Read(const aName: string; aTypeInfo: PTypeInfo; var Ptr: ; ExtraAttributes: TParamAttributes)

Parameters:

  • aName: Name of the object to read.
  • aTypeInfo: Runtime type information for the data to read.
  • Ptr: Output parameter, should point to the deserialized instance.
  • ExtraAttributes: Set of TParamAttribute

ReadArray    (declared in IROMessage)

Reads an array value.

function ReadArray(const aName: string; aClass: TClass; var Ref: ; ArrayElementId: Integer): Boolean

Parameters:

  • aName: Name of the object to read.
  • aClass: Class of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadBinary    (declared in IROMessage)

Reads a Binary value.

procedure ReadBinary(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadDateTime    (declared in IROMessage)

Reads a TDateTime value.

procedure ReadDateTime(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadDecimal    (declared in IROMessage)

Reads a Decimal value.

procedure ReadDecimal(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadDouble    (declared in IROMessage)

Reads a Double value.

procedure ReadDouble(const aName: string; aFloatType: TFloatType; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • aFloatType: Specifies the exact floating point type to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadEnumerated    (declared in IROMessage)

Reads an enumerated value.

procedure ReadEnumerated(const aName: string; anEnumTypeInfo: PTypeInfo; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • anEnumTypeInfo: Runtime type information for the enuymerated type to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadFromStream (TStream)  overload    (declared in IROMessage)

Writes the content of the message to aStream.

procedure ReadFromStream(Source: TStream)

Parameters:

  • Source: stream

ReadFromStream (TStream, Boolean)  overload    (declared in IROMessage)

Writes the content of the message to aStream.

procedure ReadFromStream(Source: TStream; var aFreeStream: Boolean)

Parameters:

  • Source: stream
  • aFreeStream: free stream

ReadGuid    (declared in IROMessage)

Reads a GUID value.

procedure ReadGuid(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadInt64    (declared in IROMessage)

Reads a Int64 value.

procedure ReadInt64(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadInteger    (declared in IROMessage)

Reads a Integer value (32 bits or less).

procedure ReadInteger(const aName: string; anOrdType: TOrdType; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • anOrdType: Specifies the exact integer point type to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadLegacyString    (declared in IROMessage)

Writes the content of the message to aStream.

procedure ReadLegacyString(const aName: string; var Ref: ; ExtraAttributes: TParamAttributes; ArrayElementId: Integer; aMaxLength: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ExtraAttributes: specified what string should be read (AnsiString or UTF8String)
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.
  • aMaxLength: Specifies the maximum string length to read, is set to -1 when no restriction is required.

ReadStruct    (declared in IROMessage)

Reads a Struct value.

function ReadStruct(const aName: string; aClass: TClass; var Ref: ; ArrayElementId: Integer): Boolean

Parameters:

  • aName: Name of the object to read.
  • aClass: Class of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadUnicodeString    (declared in IROMessage)

Reads unicode string from stream

procedure ReadUnicodeString(const aName: string; var Ref: ; ArrayElementId: Integer; aMaxLength: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.
  • aMaxLength: Specifies the maximum string length to read, is set to -1 when no restriction is required.

ReadVariant    (declared in IROMessage)

Reads a Variant value.

procedure ReadVariant(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadXml    (declared in IROMessage)

Reads a XML value.

procedure ReadXml(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

SetAttributes    (declared in IROMessage)

Sets additional information.

procedure SetAttributes(aTransport: IROTransport; const aNames: array of string; const aValues: array of string)

Parameters:

  • aTransport: Transport channel
  • aNames: Names
  • aValues: Values

SetAutoGeneratedNamespaces    (declared in IROMessage)

procedure SetAutoGeneratedNamespaces(aValue: string)

Parameters:

  • aValue:

SetDefaultNamespaces    (declared in IROMessage)

procedure SetDefaultNamespaces(aValue: string)

Parameters:

  • aValue:

StoreAttributes2    (declared in IROMessage)

Stores SOAP attributes (SOAP message only)

procedure StoreAttributes2(const aNames: array of string; const aValues: array of string)

Parameters:

  • aNames: Names
  • aValues: Values

Stream

Stream

property Stream: TStream read

UnsetAttributes    (declared in IROMessage)

Clears additional information.

procedure UnsetAttributes(aTransport: IROTransport)

Parameters:

  • aTransport: Transport channel

UnsetAttributes2    (declared in IROMessage)

Clears additional information.

procedure UnsetAttributes2

UnsetAttributes2_Transport    (declared in IROMessage)

Clears additional information.

procedure UnsetAttributes2_Transport(aTransport: IROTransport)

Parameters:

  • aTransport: Transport channel

UseCompression

Toggles whether outgoing messages will be automatically compressed if they exceed a specific size.

property UseCompression: Boolean read write

WasCompressed

Indicates when a message was compressed.

property WasCompressed: Boolean read

Write    (declared in IROMessage)

Writes the value of the aName parameter from Ptr with the given aTypeInfo and ExtraAttributes to the message.

procedure Write(const aName: string; aTypeInfo: PTypeInfo; const Ptr: ; ExtraAttributes: TParamAttributes)

Parameters:

  • aName: Name of the object to write.
  • aTypeInfo: RTI
  • Ptr: Pointer to the source variable
  • ExtraAttributes: set of TParamAttribute

WriteArray    (declared in IROMessage)

Writes an array value.

procedure WriteArray(const aName: string; const Ref: ; aClass: TClass; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • aClass: Class of the object to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteBinary    (declared in IROMessage)

Writes a Binary value.

procedure WriteBinary(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteDateTime    (declared in IROMessage)

Writes a TDateTime value.

procedure WriteDateTime(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteDecimal    (declared in IROMessage)

Writes a Decimal value.

procedure WriteDecimal(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteDouble    (declared in IROMessage)

Writes a Double value.

procedure WriteDouble(const aName: string; aFloatType: TFloatType; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • aFloatType: Specifies the exact floating point data type to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteEnumerated    (declared in IROMessage)

Writes an enumerated value.

procedure WriteEnumerated(const aName: string; anEnumTypeInfo: PTypeInfo; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • anEnumTypeInfo: Runtime type information of the enumerated type.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteException    (declared in IROMessage)

Writes the exception to stream

procedure WriteException(Dest: TStream; anException: Exception)

Parameters:

  • Dest: stream
  • anException: free stream

WriteGuid    (declared in IROMessage)

Writes a GUID value.

procedure WriteGuid(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteInt64    (declared in IROMessage)

Writes a Int64 value.

procedure WriteInt64(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteInteger    (declared in IROMessage)

Writes a Integer value (32 bits or less).

procedure WriteInteger(const aName: string; anOrdType: TOrdType; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • anOrdType: Specifies the exact integer data type to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteLegacyString    (declared in IROMessage)

Writes a legacy string (AnsiString or UTF8String) value.

procedure WriteLegacyString(const aName: string; const Ref: ; ExtraAttributes: TParamAttributes; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ExtraAttributes: specified what string should be written (AnsiString or UTF8String)
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteStruct    (declared in IROMessage)

Writes a Struct value.

procedure WriteStruct(const aName: string; const Ref: ; aClass: TClass; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • aClass: Class of the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteToStream    (declared in IROMessage)

Writes the content of the message to aStream.

procedure WriteToStream(Dest: TStream)

Parameters:

  • Dest: stream

WriteUnicodeString    (declared in IROMessage)

Writes a WideString value.

procedure WriteUnicodeString(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteVariant    (declared in IROMessage)

Writes a Variant value to the message.

procedure WriteVariant(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteXml    (declared in IROMessage)

Writes a XML value.

procedure WriteXml(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

 

ClientID    (declared in IROMessage)

Provides access to the ClientID read from the message. See event dispatching for a usage example.

property ClientID: TGUID read write

CompressionBufferSize

Size of the buffer used for compression (default is 256 kilobytes).

Increasing the buffer increases compression performance for large messages, but it also increases memory footprint. The best performance is reached with a buffer that's large enough for the maximum expected message size.

property CompressionBufferSize: Integer read write

InterfaceName    (declared in IROMessage)

Contains the name of the interface or service that is to be or was called on the server.

property InterfaceName: string read write

MaxEventsPerPoll    (declared in IROMessage)

property MaxEventsPerPoll: Integer read

MessageName    (declared in IROMessage)

Contains the name of the message (i.e. the method name) that is to be or was called on the server.

property MessageName: string read write

MessageType    (declared in IROMessage)

Type of the message represented by the message instance.

property MessageType: TMessageType read

MinSizeForCompression

Minimum size for a message before compression is applied (default is 4096 bytes). Messages below this threshold are sent uncompressed, as the overhead of compressing and decompressing the data would likely outweigh the gain of having an only slightly smaller packet on the network.

property MinSizeForCompression: Integer read write

Stream

Stream

property Stream: TStream read

UseCompression

Toggles whether outgoing messages will be automatically compressed if they exceed a specific size.

property UseCompression: Boolean read write

WasCompressed

Indicates when a message was compressed.

property WasCompressed: Boolean read

 

ApplyAttributes2    (declared in IROMessage)

Sets SOAP attributes (SOAP message only)

procedure ApplyAttributes2

ApplyAttributes2_Transport    (declared in IROMessage)

Sets transport related attributes (SOAP message only)

procedure ApplyAttributes2_Transport(aTransport: IROTransport)

Parameters:

  • aTransport: Transport channel

Finalize    (declared in IROMessage)

Ensures that the message content is complete before sending it by performing all necessary final processing. This method is called after all parameters have been written to a message and before the message will be sent. It should perform all necessary wrap-up to ensure that a subsequent call to WriteToStream will produce a complete message.

procedure Finalize

FreeStream    (declared in IROMessage)

Destroys stream

procedure FreeStream

GetEnvelopes    (declared in IROMessage)

Envelopes collection.

function GetEnvelopes: TCollection

Initialize (IROTransport, string, string, string, TMessageType)  overload    (declared in IROMessage)

Initializes the message with the given parameters.

procedure Initialize(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string; aType: TMessageType)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name
  • aType: Message type

Initialize (IROTransport, string, string, TMessageType)  overload    (declared in IROMessage)

Initializes the message with the given parameters.

procedure Initialize(const aTransport: IROTransport; const anInterfaceName: string; const aMessageName: string; aType: TMessageType)

Parameters:

  • aTransport: IROTransport
  • anInterfaceName: Interface name
  • aMessageName: Message name
  • aType: Message type

InitializeEventMessage    (declared in IROMessage)

Initializes an Event message with the given parameters.

procedure InitializeEventMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InitializeExceptionMessage    (declared in IROMessage)

Initializes an Exception message with the given parameters.

procedure InitializeExceptionMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InitializeRead    (declared in IROMessage)

Performs additional initialization before reading.

procedure InitializeRead(const aTransport: IROTransport)

Parameters:


InitializeRequestMessage    (declared in IROMessage)

Initializes a mtRequest message with the given parameters.

procedure InitializeRequestMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

InitializeResponseMessage    (declared in IROMessage)

Initializes a mtResponse message with the given parameters.

procedure InitializeResponseMessage(const aTransport: IROTransport; const aLibraryName: string; const anInterfaceName: string; const aMessageName: string)

Parameters:

  • aTransport: IROTransport
  • aLibraryName: RODL file name
  • anInterfaceName: Interface name
  • aMessageName: Message name

Read    (declared in IROMessage)

The general method to read any data.

procedure Read(const aName: string; aTypeInfo: PTypeInfo; var Ptr: ; ExtraAttributes: TParamAttributes)

Parameters:

  • aName: Name of the object to read.
  • aTypeInfo: Runtime type information for the data to read.
  • Ptr: Output parameter, should point to the deserialized instance.
  • ExtraAttributes: Set of TParamAttribute

ReadArray    (declared in IROMessage)

Reads an array value.

function ReadArray(const aName: string; aClass: TClass; var Ref: ; ArrayElementId: Integer): Boolean

Parameters:

  • aName: Name of the object to read.
  • aClass: Class of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadBinary    (declared in IROMessage)

Reads a Binary value.

procedure ReadBinary(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadDateTime    (declared in IROMessage)

Reads a TDateTime value.

procedure ReadDateTime(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadDecimal    (declared in IROMessage)

Reads a Decimal value.

procedure ReadDecimal(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadDouble    (declared in IROMessage)

Reads a Double value.

procedure ReadDouble(const aName: string; aFloatType: TFloatType; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • aFloatType: Specifies the exact floating point type to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadEnumerated    (declared in IROMessage)

Reads an enumerated value.

procedure ReadEnumerated(const aName: string; anEnumTypeInfo: PTypeInfo; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • anEnumTypeInfo: Runtime type information for the enuymerated type to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadFromStream (TStream)  overload    (declared in IROMessage)

Writes the content of the message to aStream.

procedure ReadFromStream(Source: TStream)

Parameters:

  • Source: stream

ReadFromStream (TStream, Boolean)  overload    (declared in IROMessage)

Writes the content of the message to aStream.

procedure ReadFromStream(Source: TStream; var aFreeStream: Boolean)

Parameters:

  • Source: stream
  • aFreeStream: free stream

ReadGuid    (declared in IROMessage)

Reads a GUID value.

procedure ReadGuid(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadInt64    (declared in IROMessage)

Reads a Int64 value.

procedure ReadInt64(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadInteger    (declared in IROMessage)

Reads a Integer value (32 bits or less).

procedure ReadInteger(const aName: string; anOrdType: TOrdType; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • anOrdType: Specifies the exact integer point type to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadLegacyString    (declared in IROMessage)

Writes the content of the message to aStream.

procedure ReadLegacyString(const aName: string; var Ref: ; ExtraAttributes: TParamAttributes; ArrayElementId: Integer; aMaxLength: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ExtraAttributes: specified what string should be read (AnsiString or UTF8String)
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.
  • aMaxLength: Specifies the maximum string length to read, is set to -1 when no restriction is required.

ReadStruct    (declared in IROMessage)

Reads a Struct value.

function ReadStruct(const aName: string; aClass: TClass; var Ref: ; ArrayElementId: Integer): Boolean

Parameters:

  • aName: Name of the object to read.
  • aClass: Class of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadUnicodeString    (declared in IROMessage)

Reads unicode string from stream

procedure ReadUnicodeString(const aName: string; var Ref: ; ArrayElementId: Integer; aMaxLength: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.
  • aMaxLength: Specifies the maximum string length to read, is set to -1 when no restriction is required.

ReadVariant    (declared in IROMessage)

Reads a Variant value.

procedure ReadVariant(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

ReadXml    (declared in IROMessage)

Reads a XML value.

procedure ReadXml(const aName: string; var Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to read.
  • Ref: Output parameter, should point to the deserialized instance.
  • ArrayElementId: If the object about to be read is an array element, its index is contained in this parameter, otherwise it is -1.

SetAttributes    (declared in IROMessage)

Sets additional information.

procedure SetAttributes(aTransport: IROTransport; const aNames: array of string; const aValues: array of string)

Parameters:

  • aTransport: Transport channel
  • aNames: Names
  • aValues: Values

SetAutoGeneratedNamespaces    (declared in IROMessage)

procedure SetAutoGeneratedNamespaces(aValue: string)

Parameters:

  • aValue:

SetDefaultNamespaces    (declared in IROMessage)

procedure SetDefaultNamespaces(aValue: string)

Parameters:

  • aValue:

StoreAttributes2    (declared in IROMessage)

Stores SOAP attributes (SOAP message only)

procedure StoreAttributes2(const aNames: array of string; const aValues: array of string)

Parameters:

  • aNames: Names
  • aValues: Values

UnsetAttributes    (declared in IROMessage)

Clears additional information.

procedure UnsetAttributes(aTransport: IROTransport)

Parameters:

  • aTransport: Transport channel

UnsetAttributes2    (declared in IROMessage)

Clears additional information.

procedure UnsetAttributes2

UnsetAttributes2_Transport    (declared in IROMessage)

Clears additional information.

procedure UnsetAttributes2_Transport(aTransport: IROTransport)

Parameters:

  • aTransport: Transport channel

Write    (declared in IROMessage)

Writes the value of the aName parameter from Ptr with the given aTypeInfo and ExtraAttributes to the message.

procedure Write(const aName: string; aTypeInfo: PTypeInfo; const Ptr: ; ExtraAttributes: TParamAttributes)

Parameters:

  • aName: Name of the object to write.
  • aTypeInfo: RTI
  • Ptr: Pointer to the source variable
  • ExtraAttributes: set of TParamAttribute

WriteArray    (declared in IROMessage)

Writes an array value.

procedure WriteArray(const aName: string; const Ref: ; aClass: TClass; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • aClass: Class of the object to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteBinary    (declared in IROMessage)

Writes a Binary value.

procedure WriteBinary(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteDateTime    (declared in IROMessage)

Writes a TDateTime value.

procedure WriteDateTime(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteDecimal    (declared in IROMessage)

Writes a Decimal value.

procedure WriteDecimal(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteDouble    (declared in IROMessage)

Writes a Double value.

procedure WriteDouble(const aName: string; aFloatType: TFloatType; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • aFloatType: Specifies the exact floating point data type to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteEnumerated    (declared in IROMessage)

Writes an enumerated value.

procedure WriteEnumerated(const aName: string; anEnumTypeInfo: PTypeInfo; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • anEnumTypeInfo: Runtime type information of the enumerated type.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteException    (declared in IROMessage)

Writes the exception to stream

procedure WriteException(Dest: TStream; anException: Exception)

Parameters:

  • Dest: stream
  • anException: free stream

WriteGuid    (declared in IROMessage)

Writes a GUID value.

procedure WriteGuid(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteInt64    (declared in IROMessage)

Writes a Int64 value.

procedure WriteInt64(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteInteger    (declared in IROMessage)

Writes a Integer value (32 bits or less).

procedure WriteInteger(const aName: string; anOrdType: TOrdType; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • anOrdType: Specifies the exact integer data type to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteLegacyString    (declared in IROMessage)

Writes a legacy string (AnsiString or UTF8String) value.

procedure WriteLegacyString(const aName: string; const Ref: ; ExtraAttributes: TParamAttributes; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ExtraAttributes: specified what string should be written (AnsiString or UTF8String)
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteStruct    (declared in IROMessage)

Writes a Struct value.

procedure WriteStruct(const aName: string; const Ref: ; aClass: TClass; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • aClass: Class of the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteToStream    (declared in IROMessage)

Writes the content of the message to aStream.

procedure WriteToStream(Dest: TStream)

Parameters:

  • Dest: stream

WriteUnicodeString    (declared in IROMessage)

Writes a WideString value.

procedure WriteUnicodeString(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteVariant    (declared in IROMessage)

Writes a Variant value to the message.

procedure WriteVariant(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.

WriteXml    (declared in IROMessage)

Writes a XML value.

procedure WriteXml(const aName: string; const Ref: ; ArrayElementId: Integer)

Parameters:

  • aName: Name of the object to write.
  • Ref: Points to the instance to serialize.
  • ArrayElementId: If the object to write is an array element, its index is contained in this parameter, otherwise it is -1.