TROWaitingRequest

Overview

This class is a part of super channels implementation and represents a request that is waiting for the remote server response. Because the super channels are asynchronous several requests can wait for the completion at the same time.
This class is internal and is not supposed to be used by users.

Location

 

constructor Create

Creates a new instance with a supplied values.

constructor Create(Id: Integer; Ev: TROEvent; aAnswerWaitEvent: TROEvent; aisStatusOnly: Boolean)

Parameters:

  • Id: The identifying number of the request. The value is assigned to the Id property.
  • Ev: The synchronization object to be used to pause the thread execution until response received or timeout occurs. If nil is passed then the TROEvent instance will be created automatically.
    The value is assigned to the Event property.
  • aAnswerWaitEvent:
  • aisStatusOnly:

AnswerWaitEvent

property AnswerWaitEvent: TROEvent read

Event

Provides read-only access to the synchronization object used to pause the thread execution until response received or timeout occurs.

property Event: TROEvent read

Id

The identifying number of the request. There is a counter variable in the super channel instance, the counter increases every time the new outgoing package is being formed then the counter value is saved to this property. The remote party preserves this number when replying to the package so the channel can find the corresponding waiting request.

property Id: Integer read

ResultData

property ResultData: TStream read write

ResultErrorCode

Keeps the error code if the remote request fails.

property ResultErrorCode: Integer read write

 

Id

The identifying number of the request. There is a counter variable in the super channel instance, the counter increases every time the new outgoing package is being formed then the counter value is saved to this property. The remote party preserves this number when replying to the package so the channel can find the corresponding waiting request.

property Id: Integer read

ResultData

property ResultData: TStream read write

ResultErrorCode

Keeps the error code if the remote request fails.

property ResultErrorCode: Integer read write

 

constructor Create

Creates a new instance with a supplied values.

constructor Create(Id: Integer; Ev: TROEvent; aAnswerWaitEvent: TROEvent; aisStatusOnly: Boolean)

Parameters:

  • Id: The identifying number of the request. The value is assigned to the Id property.
  • Ev: The synchronization object to be used to pause the thread execution until response received or timeout occurs. If nil is passed then the TROEvent instance will be created automatically.
    The value is assigned to the Event property.
  • aAnswerWaitEvent:
  • aisStatusOnly:

 

AnswerWaitEvent

property AnswerWaitEvent: TROEvent read

Event

Provides read-only access to the synchronization object used to pause the thread execution until response received or timeout occurs.

property Event: TROEvent read