IROActiveAsyncTransportChannel

Overview

The IROActiveAsyncTransportChannel interface is used to build an asynchronous channel with Remoting SDK (more information about Remoting SDK channels see Comparison of the Remoting SDK Channels). The asynchronous channel is used with an asynchronous client. An example of an asynchronous client is given in the article Building Asynchronous Clients with Remoting SDK (Delphi).

If you want to implement an asynchronous channel you should implement IROActiveAsyncTransportChannel and its ancestor interfaces.

Location

Implemented in

Required Methods


CheckStatus    (declared in IROAsyncTransportChannel)

Indicates whether an answer is received after an InvokeRequest.

function CheckStatus(const iMessageID: string): boolean

Parameters:

  • iMessageID: Value of the previously called InvokeRequest result

InvokeRequest (TStream, boolean): string    (declared in IROAsyncTransportChannel)

Invokes a request in async mode. The returned string is used in the CheckStatus invocation.

function InvokeRequest(aRequest: TStream; iGetResponse: boolean): string

Parameters:

  • aRequest: Request data
  • iGetResponse: Indicates whether a response to this request is expected

InvokeRequest (TStream, boolean, TROEvent): string  overload

Invokes a request in async mode. The returned string is used in the CheckStatus invocation.

function InvokeRequest(aRequest: TStream; aGetResponse: boolean; aEvent: TROEvent): string

Parameters:

  • aRequest: Request data
  • aGetResponse: Indicates whether a response to this request is expected
  • aEvent: Event

RetrieveResponse    (declared in IROAsyncTransportChannel)

Retrieves a response in an async channel.

procedure RetrieveResponse(const iMessageID: string; aResponse: TStream)

Parameters:

  • iMessageID: Id of a waiting response
  • aResponse: Response data

See Also

  • Channel FAQs (Remoting SDK)
  • Comparison of the Remoting SDK Channels
  • Remoting SDK