Quintiq file version 2.0
|
#parent: #root
|
Method ExecuteInbound (
|
DSP_ServiceCommitterBase local_committer
|
)
|
{
|
Description:
|
[*
|
Execute one or all inbound messages depending on process mode and call OnNeedExecuteInbound to inform client if additional processing is needed.
|
This message should be called from a Job on the client dataset that passes the interface (dataset)
|
*]
|
TextBody:
|
[*
|
dsp := this.DistributedServiceProviderBase();
|
|
// Set some details on the committer
|
local_committer.IsDetailedLogging( dsp.IsDetailedLogging() );
|
local_committer.NodeId( dsp.MyNodeId() );
|
|
// Process the required number of messages as long as execution is succesful
|
currentTransactionId := guard( this.InboundMessageQueue().FirstMessage().TransactionId(), "" );
|
while ( ( not this.InboundMessageQueue().IsEmpty() )
|
and ( this.InboundMessageQueue().FirstMessage().TransactionId() = currentTransactionId )
|
and this.ExecuteFirstInboundMessage( local_committer )
|
) {}
|
|
// Continue processing inbound items in new transaction
|
this.KickInbound();
|
*]
|
}
|