class Ens.Enterprise.MsgBankOperation
extends Ens.Enterprise.OperationBase, Ens.Util.XML.Reader
This operation and its configuration control archiving of events via TCP to a near-real-time MsgBank server running the production Ens.Enterprise.MsgBank.Production.
This is a Business Operation class.
parameter ADAPTER = "Ens.Enterprise.MsgBank.ClientTCPAdapter";
The type of adapter used to communicate with external systems
parameter SETTINGS = "EnableArchiving,ArchiveItems,EventLogInterval,ForceKeepalives";
List of properties can be set as settings in the configuration file
format is a comma separated list of property names
property EventLogInterval
as %Numeric [ InitialExpression = 3 ];
How frequently should we check for conforming EventLog events that may need to be forwarded to the MsgBank Server.
0 means check only when messages are being forwarded.
property FailureTimeout
as %Numeric(MINVAL=-1) [ InitialExpression = -1 ];
How long to keep retrying before giving up and returning an error code
property ForceKeepalives
as %Boolean;
Send empty event submissions periodically if no conforming events need to be submitted
method OnConnect(pTimeout)
as %Status
The Adapter invokes the OnConnect() method to manage initialization of the connection
method OnInit()
as %Status
This user callback method is called just after %OnNew()
method OnKeepalive(pAdapterStatus As %Status)
as %Status
This method will be called within KeepaliveInterval of the last return from OnTask() or OnKeepalive().
It is called via the Adapter's OnKeepalive() method, which is called from the Host.OnTask() method;
if there is no Adapter there is no keepalive call.
method OnMessage(pRequest As Ens.MessageHeader, Output pResponse As %Library.Persistent)
as %Status
This is the default message handler. All request types not declared in the message map are delivered here
method checkReply(pReplyXML As %String, pFlags As %Integer, pHdrId As %Integer, pEvtId As %Integer)
as %Status
method exportEvents(pStream As %GlobalBinaryStream, pPrevEventSent As %Integer, ByRef pLastEvtSent As %Integer, pWriteHeader As %Integer = 0, ByRef pLastEventProcessed As %Integer)
as %Status
Archive all selected events since the last ID we checked
method getReplyData(pReplyXML As %String, Output pFlags, Output pHeaderId, Output pEventId)
as %Status