Quintiq file version 2.0
|
#parent: #root
|
MethodOverride Operation (LibOpt_Task task) as stream[JSON]
|
{
|
TextBody:
|
[*
|
if( not this.CountOnFinalize() and ( not this.CheckAborted() or not task.IsAborted() ) )
|
{
|
this.NrOfTimesCalled( this.NrOfTimesCalled() + 1 );
|
}
|
|
result := null( stream[JSON] );
|
if( this.Delay() <= Duration::Zero() )
|
{
|
result := this.Continue( task );
|
}
|
else if( this.Run().InOneTransaction() )
|
{
|
OS::Sleep( this.Delay().TotalInMillis() );
|
result := this.Continue( task );
|
}
|
else
|
{
|
result := this.Delay().TotalInMillis()->LibOpt_ComponentCounter::Wait( )->|this->Continue( task );
|
}
|
return result
|
*]
|
}
|