TROSCClientWorker

Overview

This is the super channel worker class designed to use on the client side.
This class is used internally, users will never intercat with it.

Location

 

constructor Create (TROBaseSuperTcpConnection)    (declared in TROBaseSuperChannelWorker)

constructor Create(ABaseSuperConnection: TROBaseSuperTcpConnection)

Parameters:

  • ABaseSuperConnection:

Sets the worker to disconnected state. Informs the Owner that the worker has disconnected.

constructor Create(aOwner: TROBaseSuperTCPChannel; aBaseSuperConnection: TROBaseSuperTcpConnection)

Parameters:

  • aOwner: The package id received.
  • aBaseSuperConnection: The stream containing the incoming data, payload only.

BaseSuperConnection  protected    (declared in TROBaseSuperChannelWorker)

property BaseSuperConnection: TROBaseSuperTcpConnection read

BeginWriteLock    (declared in TROBaseSuperChannelWorker)

procedure BeginWriteLock

ClientID    (declared in TROBaseSuperChannelWorker)

property ClientID: TGuid read write

Connected  protected override

procedure Connected

Disconnect    (declared in TROBaseSuperChannelWorker)

procedure Disconnect

Disconnected  protected override

Sets the worker to disconnected state. Informs the Owner that the worker has disconnected.

procedure Disconnected(var aRestartLoop: Boolean)

Parameters:

  • aRestartLoop: True value of this parameter indicates that the connection has to be reestablished.

DoExecute    (declared in TROBaseSuperChannelWorker)

procedure DoExecute

EndWriteLock    (declared in TROBaseSuperChannelWorker)

procedure EndWriteLock

GenerateId    (declared in TROBaseSuperChannelWorker)

function GenerateId: Integer

GetDefaultResponse  protected virtual    (declared in TROBaseSuperChannelWorker)

function GetDefaultResponse: string

Idle  protected override

procedure Idle

IncomingData  protected override

Sets the worker to disconnected state. Informs the Owner that the worker has disconnected.

procedure IncomingData(aId: Integer; aData: TStream)

Parameters:

  • aId: The package id received.
  • aData: The stream containing the incoming data, payload only.

IntSendData  protected    (declared in TROBaseSuperChannelWorker)

function IntSendData(aId: Integer; aData: TStream): IROPackageAck

Parameters:

  • aId:
  • aData:

IsConnected    (declared in TROBaseSuperChannelWorker)

property IsConnected: Boolean read write

IsServer  protected    (declared in TROBaseSuperChannelWorker)

property IsServer: Boolean read write

LastData  protected    (declared in TROBaseSuperChannelWorker)

property LastData: TDateTime read

MaxPackageSize    (declared in TROBaseSuperChannelWorker)

property MaxPackageSize: Integer read write

OnProgress    (declared in TROBaseSuperChannelWorker)

property OnProgress: TProgressEvent read write
delegate: procedure OnProgress(aSender: TObject; aType: TProgressType; aDirection: TProgressDirection; aTransferred: Integer; aTotal: Integer)

Owner

Provides read-only access to the super channel instance that the worker works for.

property Owner: TROBaseSuperTCPChannel read

PingFrequency  protected    (declared in TROBaseSuperChannelWorker)

property PingFrequency: Integer read write

PingTimeout  protected    (declared in TROBaseSuperChannelWorker)

property PingTimeout: Integer read write

ProcessOption  protected    (declared in TROBaseSuperChannelWorker)

procedure ProcessOption(aData: TStream)

Parameters:

  • aData:

ReadStream  protected    (declared in TROBaseSuperChannelWorker)

function ReadStream(aDest: TStream; aLen: Integer): Boolean

Parameters:

  • aDest:
  • aLen:

SendError    (declared in TROBaseSuperChannelWorker)

procedure SendError(aId: Integer; aError: Byte)

Parameters:

  • aId:
  • aError:

SendOptions  protected    (declared in TROBaseSuperChannelWorker)

procedure SendOptions(aData: ROUTF8String)

Parameters:

  • aData:

SendPackage    (declared in TROBaseSuperChannelWorker)

function SendPackage(aData: TStream; aId: Integer): IROPackageAck

Parameters:

  • aData:
  • aId:

SetAckDetails  protected override

procedure SetAckDetails(aId: Integer; aOk: Boolean; aErrorNo: Integer)

Parameters:

  • aId:
  • aOk:
  • aErrorNo:

SkipAck    (declared in TROBaseSuperChannelWorker)

property SkipAck: Boolean read write

SupportsOptions  protected    (declared in TROBaseSuperChannelWorker)

procedure SupportsOptions

WaitForAck    (declared in TROBaseSuperChannelWorker)

class procedure WaitForAck(aPackage: IROPackageAck; aTimeout: Integer)

Parameters:

  • aPackage:
  • aTimeout:

 

BaseSuperConnection  protected    (declared in TROBaseSuperChannelWorker)

property BaseSuperConnection: TROBaseSuperTcpConnection read

ClientID    (declared in TROBaseSuperChannelWorker)

property ClientID: TGuid read write

IsConnected    (declared in TROBaseSuperChannelWorker)

property IsConnected: Boolean read write

IsServer  protected    (declared in TROBaseSuperChannelWorker)

property IsServer: Boolean read write

LastData  protected    (declared in TROBaseSuperChannelWorker)

property LastData: TDateTime read

MaxPackageSize    (declared in TROBaseSuperChannelWorker)

property MaxPackageSize: Integer read write

Owner

Provides read-only access to the super channel instance that the worker works for.

property Owner: TROBaseSuperTCPChannel read

PingFrequency  protected    (declared in TROBaseSuperChannelWorker)

property PingFrequency: Integer read write

PingTimeout  protected    (declared in TROBaseSuperChannelWorker)

property PingTimeout: Integer read write

SkipAck    (declared in TROBaseSuperChannelWorker)

property SkipAck: Boolean read write

 

WaitForAck    (declared in TROBaseSuperChannelWorker)

class procedure WaitForAck(aPackage: IROPackageAck; aTimeout: Integer)

Parameters:

  • aPackage:
  • aTimeout:

 

constructor Create (TROBaseSuperTcpConnection)    (declared in TROBaseSuperChannelWorker)

constructor Create(ABaseSuperConnection: TROBaseSuperTcpConnection)

Parameters:

  • ABaseSuperConnection:

Sets the worker to disconnected state. Informs the Owner that the worker has disconnected.

constructor Create(aOwner: TROBaseSuperTCPChannel; aBaseSuperConnection: TROBaseSuperTcpConnection)

Parameters:

  • aOwner: The package id received.
  • aBaseSuperConnection: The stream containing the incoming data, payload only.

BeginWriteLock    (declared in TROBaseSuperChannelWorker)

procedure BeginWriteLock

Connected  protected override

procedure Connected

Disconnect    (declared in TROBaseSuperChannelWorker)

procedure Disconnect

Disconnected  protected override

Sets the worker to disconnected state. Informs the Owner that the worker has disconnected.

procedure Disconnected(var aRestartLoop: Boolean)

Parameters:

  • aRestartLoop: True value of this parameter indicates that the connection has to be reestablished.

DoExecute    (declared in TROBaseSuperChannelWorker)

procedure DoExecute

EndWriteLock    (declared in TROBaseSuperChannelWorker)

procedure EndWriteLock

GenerateId    (declared in TROBaseSuperChannelWorker)

function GenerateId: Integer

GetDefaultResponse  protected virtual    (declared in TROBaseSuperChannelWorker)

function GetDefaultResponse: string

Idle  protected override

procedure Idle

IncomingData  protected override

Sets the worker to disconnected state. Informs the Owner that the worker has disconnected.

procedure IncomingData(aId: Integer; aData: TStream)

Parameters:

  • aId: The package id received.
  • aData: The stream containing the incoming data, payload only.

IntSendData  protected    (declared in TROBaseSuperChannelWorker)

function IntSendData(aId: Integer; aData: TStream): IROPackageAck

Parameters:

  • aId:
  • aData:

ProcessOption  protected    (declared in TROBaseSuperChannelWorker)

procedure ProcessOption(aData: TStream)

Parameters:

  • aData:

ReadStream  protected    (declared in TROBaseSuperChannelWorker)

function ReadStream(aDest: TStream; aLen: Integer): Boolean

Parameters:

  • aDest:
  • aLen:

SendError    (declared in TROBaseSuperChannelWorker)

procedure SendError(aId: Integer; aError: Byte)

Parameters:

  • aId:
  • aError:

SendOptions  protected    (declared in TROBaseSuperChannelWorker)

procedure SendOptions(aData: ROUTF8String)

Parameters:

  • aData:

SendPackage    (declared in TROBaseSuperChannelWorker)

function SendPackage(aData: TStream; aId: Integer): IROPackageAck

Parameters:

  • aData:
  • aId:

SetAckDetails  protected override

procedure SetAckDetails(aId: Integer; aOk: Boolean; aErrorNo: Integer)

Parameters:

  • aId:
  • aOk:
  • aErrorNo:

SupportsOptions  protected    (declared in TROBaseSuperChannelWorker)

procedure SupportsOptions

 

OnProgress    (declared in TROBaseSuperChannelWorker)

property OnProgress: TProgressEvent read write
delegate: procedure OnProgress(aSender: TObject; aType: TProgressType; aDirection: TProgressDirection; aTransferred: Integer; aTotal: Integer)