public override void complete(ActivityExecution scopeExecution) { // check whether legacy behavior needs to be performed. if (!LegacyBehavior.eventSubprocessComplete(scopeExecution)) { // in case legacy behavior is not performed, the event subprocess behaves in the same way as a regular subprocess. base.complete(scopeExecution); } }
public override void concurrentChildExecutionEnded(ActivityExecution scopeExecution, ActivityExecution endedExecution) { // Check whether legacy behavior needs to be performed. // Legacy behavior means that the event subprocess is not a scope and as a result does not // join concurrent executions on it's own. Instead it delegates to the the subprocess activity behavior in which it is embedded. if (!LegacyBehavior.eventSubprocessConcurrentChildExecutionEnded(scopeExecution, endedExecution)) { // in case legacy behavior is not performed, the event subprocess behaves in the same way as a regular subprocess. base.concurrentChildExecutionEnded(scopeExecution, endedExecution); } }
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET: //ORIGINAL LINE: public void signal(org.camunda.bpm.engine.impl.pvm.delegate.ActivityExecution execution, String signalName, Object signalData) throws Exception public virtual void signal(ActivityExecution execution, string signalName, object signalData) { if (LegacyBehavior.signalCancelBoundaryEvent(signalName)) { // join compensating executions if (!execution.hasChildren()) { leave(execution); } else { ((ExecutionEntity)execution).forceUpdate(); } } else { base.signal(execution, signalName, signalData); } }