The TROEventProxy class is the base class for event handling. It contains the event message that was passed from the server to the client. The TROEventProxy class is used as ancestor class for the descendant TROEventWriter and TROEventInvoker classes, which process and send the event message. You can use the TROEventProxy class as ancestor class for your own event handler class.




Controls which message instance will be used for remote requests. The value of this property affects TROBaseProxy.__GetMessage behavior, when set to true it will clone the message instance every time before making a remote request. Cloning the message helps to avoid conflicts in multithreaded environment (e.g. when TROEventReceiver is used).

property CloneMessage: Boolean read write

RefCount    (declared in TROInterfacedObject)

Provides read-only access to the reference counter. When this value reaches zero, the object is freed.

property RefCount: Integer read

Class Methods

NewInstance  override    (declared in TROInterfacedObject)

Creates and returns a new instance of the interfaced object, initializing its reference counter with 1.

class function NewInstance: TObject

Instance Methods

constructor Create

Creates a new TROEventProxy object with the specified message aMessage. If the CloneMessage is true, the constructor creates a copy of the aMessage and saves it in the private variable fMessage. If the CloneMessage is false, the fMessage saves a reference of the aMessage.

constructor Create(const aMessage: IROMessage; aCloneMessage: Boolean)


  • aMessage: Specified message
  • aCloneMessage: When true, a copy of the aMessage will be saved, otherwise a reference to the aMessage will be saved.