/** * {@inheritdoc} */ public function interrupt(VirtualExecution $execution, array $transitions = NULL) { foreach ($execution->findChildExecutions() as $sub) { $sub->terminate(false); } parent::interrupt($execution, $transitions); }
/** * {@inheritdoc} */ public function interrupt(VirtualExecution $execution, array $transitions = NULL) { $engine = $execution->getEngine(); $root = $execution->getScope(); $params = ['e1' => $root->getId()]; $i = 1; foreach ($root->findChildExecutions() as $child) { $params['e' . ++$i] = $child->getId(); } $placeholders = implode(', ', array_map(function ($p) { return ':' . $p; }, array_keys($params))); $stmt = $engine->prepareQuery("SELECT `id` FROM `#__bpmn_user_task` WHERE `execution_id` IN ({$placeholders})"); $stmt->bindAll($params); $stmt->transform('id', new UUIDTransformer()); $stmt->execute(); foreach ($stmt->fetchColumns('id') as $taskId) { $engine->executeCommand(new RemoveUserTaskCommand($taskId)); } parent::interrupt($execution, $transitions); }
public function __construct($activityId, ExpressionInterface $typeName) { parent::__construct($activityId); $this->typeName = $typeName; }
public function __construct($activityId, $message) { parent::__construct($activityId); $this->message = (string) $message; }
public function __construct($activityId) { parent::__construct($activityId); }
public function __construct($activityId, ExpressionInterface $expression) { parent::__construct($activityId); $this->expression = $expression; }