TRORTTIInvoker
Overview
Location
- Unit: uRORTTIServerSupport.pas
- Ancestry: TInterfacedObject | TROInvoker | TRORTTIInvoker
Instance Methods
constructor Create virtual (declared in TROInvoker)
Creates a new instance.
constructor Create
AfterInvoke protected virtual (declared in TROInvoker)
This method is called after the service method invocation has completed.
procedure AfterInvoke(aMethodPtr: TMessageInvokeMethod; const anInstance: IInterface; const aFactory: IROClassFactory; const aMessage: IROMessage; const aTransport: IROTransport; anException: Exception)
Parameters:
- aMethodPtr: Procedure type pointer to the invoked method
- anInstance: Points to the service instance
- aFactory: Points to the service class factory object
- aMessage: Message object containing the method parameters and the result
- aTransport: Points to the transport object containing connection-specific information
- anException: Contains the exception object if one was raised during invocation
BeforeInvoke protected virtual (declared in TROInvoker)
This method is called before the service method invocation is performed.
procedure BeforeInvoke(aMethodPtr: TMessageInvokeMethod; const anInstance: IInterface; const aFactory: IROClassFactory; const aMessage: IROMessage; const aTransport: IROTransport)
Parameters:
- aMethodPtr: Procedure type pointer to the method about to be invoked
- anInstance: Points to the service instance
- aFactory: Points to the service class factory object
- aMessage: Message object containing the method parameters
- aTransport: Points to the transport object containing connection-specific information
CheckRoles protected (declared in TROInvoker)
Validates roles
procedure CheckRoles(anInstance: IInterface; aRoles: array of string)
Parameters:
- anInstance: Points to the service instance
- aRoles: Roles
CustomHandleMessage protected virtual (declared in TROInvoker)
The main message handling method, called every time a new message comes to the server.
function CustomHandleMessage(const aFactory: IROClassFactory; const aMessage: IROMessage; const aTransport: IROTransport; out oResponseOptions: TROResponseOptions): Boolean
Parameters:
- aFactory: Points to the service class factory object
- aMessage: Message that needs to be processed.
- aTransport: Points to the transport object containing connection-specific information
- oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
GetDefaultServiceRoles protected virtual (declared in TROInvoker)
Returns default service roles. default value = no roles
function GetDefaultServiceRoles: TStringArray
GetInvokeMethodName protected override
function GetInvokeMethodName(aMessage: IROMessage): string
Parameters:
- aMessage:
HandleMessage (declared in TROInvoker)
Non-virtual public method to handle the message; this method actually calls the virtual method above.
function HandleMessage(const aFactory: IROClassFactory; const aMessage: IROMessage; const aTransport: IROTransport; out oResponseOptions: TROResponseOptions): Boolean
Parameters:
- aFactory: Points to the service class factory object
- aMessage: Message that needs to be processed
- aTransport: Points to the transport object containing connection-specific information
- oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
Invoke_GetEventsData (declared in TROInvoker)
Predefined invoker method to invoke the base service method that is responsible for sending events data to the client. Used in Legacy Events mode only.
procedure Invoke_GetEventsData(const __Instance: IInterface; const __Message: IROMessage; const __Transport: IROTransport; out __oResponseOptions: TROResponseOptions)
Parameters:
- __Instance: Points to the service instance
- __Message: Message that needs to be processed
- __Transport: Points to the transport object containing connection-specific information
- __oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
Invoke_RegisterClient (declared in TROInvoker)
Predefined invoker method to invoke the base service method that is responsible for subscribing the client to receive events. Used in Legacy Events mode only, will otherwise be ignored by the service.
procedure Invoke_RegisterClient(const __Instance: IInterface; const __Message: IROMessage; const __Transport: IROTransport; out __oResponseOptions: TROResponseOptions)
Parameters:
- __Instance: Points to the service instance
- __Message: Message that needs to be processed
- __Transport: Points to the transport object containing connection-specific information
- __oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
Invoke_RegisterEventClient (declared in TROInvoker)
Different name for the method above.
procedure Invoke_RegisterEventClient(const __Instance: IInterface; const __Message: IROMessage; const __Transport: IROTransport; out __oResponseOptions: TROResponseOptions)
Parameters:
- __Instance: Points to the service instance
- __Message: Message that needs to be processed
- __Transport: Points to the transport object containing connection-specific information
- __oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
Invoke_UnregisterClient (declared in TROInvoker)
Predefined invoker method to invoke the base service method that is responsible for unsubscribing the client from events. Used in Legacy Events mode only, will otherwise be ignored by the service.
procedure Invoke_UnregisterClient(const __Instance: IInterface; const __Message: IROMessage; const __Transport: IROTransport; out __oResponseOptions: TROResponseOptions)
Parameters:
- __Instance: Points to the service instance
- __Message: Message that needs to be processed
- __Transport: Points to the transport object containing connection-specific information
- __oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
Invoke_UnregisterEventClient (declared in TROInvoker)
Different name for the method above.
procedure Invoke_UnregisterEventClient(const __Instance: IInterface; const __Message: IROMessage; const __Transport: IROTransport; out __oResponseOptions: TROResponseOptions)
Parameters:
- __Instance: Points to the service instance
- __Message: Message that needs to be processed
- __Transport: Points to the transport object containing connection-specific information
- __oResponseOptions: Set of option flags such as 'no answer required', 'must not encrypt the answer', etc.
RTTIInvoke
procedure RTTIInvoke(const __Instance: IInterface; const __Message: IROMessage; const __Transport: IROTransport; out __oResponseOptions: TROResponseOptions)
Parameters:
- __Instance:
- __Message:
- __Transport:
- __oResponseOptions: