IROSOAPMessage

Overview

IROSOAPMessage provides access to specific SOAP properties of TROSOAPMessage.

The following example demonstrates the usage of this interface:

procedure TNewService.DataAbstractServiceGetDispatchInfo(
  const aTransport: IROTransport; const aMessage: IROMessage);
var
  sp: IROSOAPMessage;
begin
  if Supports(aMessage,IROSOAPMessage, sp) then begin
    // do something like saving node to file, like :
    with TStringStream.Create(sp.EnvelopeNode.XML) do try
      SaveToFile('my.xml');
    finally
      Free;
    end;
  end;
end;

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

BodyNode

Returns the Body node.

property BodyNode: IXMLNode read

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

EnvelopeNode

Returns the Envelope node.

property EnvelopeNode: IXMLNode read

FaultNode

Returns the Fault node.

property FaultNode: IXMLNode read

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

GetBodyNode

Returns the Body node.

function GetBodyNode: IXMLNode

GetEnvelopes    (declared in IROMessage)

Envelopes collection.

function GetEnvelopes: TCollection

GetEnvNode

Returns the Envelope node.

function GetEnvNode: IXMLNode

GetFaultNode

Returns the Fault node.

function GetFaultNode: IXMLNode

GetHeader

Returns the Header node.

function GetHeader: IXMLNode

GetLibraryName

Returns the library name.

function GetLibraryName: string

GetMessageNode

Returns Message node

function GetMessageNode: IXMLNode

HeaderNode

Returns the Header node.

property HeaderNode: IXMLNode read

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

LibraryName

Returns the library name.

property LibraryName: string read

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

MessageNode

Returns the Message node

property MessageNode: IXMLNode read

MessageType    (declared in IROMessage)

Type of the message represented by the message instance.

property MessageType: TMessageType read

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.

 

BodyNode

Returns the Body node.

property BodyNode: IXMLNode read

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

EnvelopeNode

Returns the Envelope node.

property EnvelopeNode: IXMLNode read

FaultNode

Returns the Fault node.

property FaultNode: IXMLNode read

HeaderNode

Returns the Header node.

property HeaderNode: IXMLNode read

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

LibraryName

Returns the library name.

property LibraryName: string read

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

MessageNode

Returns the Message node

property MessageNode: IXMLNode read

MessageType    (declared in IROMessage)

Type of the message represented by the message instance.

property MessageType: TMessageType 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

GetBodyNode

Returns the Body node.

function GetBodyNode: IXMLNode

GetEnvelopes    (declared in IROMessage)

Envelopes collection.

function GetEnvelopes: TCollection

GetEnvNode

Returns the Envelope node.

function GetEnvNode: IXMLNode

GetFaultNode

Returns the Fault node.

function GetFaultNode: IXMLNode

GetHeader

Returns the Header node.

function GetHeader: IXMLNode

GetLibraryName

Returns the library name.

function GetLibraryName: string

GetMessageNode

Returns Message node

function GetMessageNode: IXMLNode

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.