public function removeEventDefinition(\BpmnEvent $bpmnEvent) { try { //Case-Scheduler - Delete if ($bpmnEvent->getEvnType() == "START" && $bpmnEvent->getEvnMarker() == "TIMER") { $caseScheduler = new \CaseScheduler(); if ($caseScheduler->Exists($bpmnEvent->getEvnUid())) { $this->wp->removeCaseScheduler($bpmnEvent->getEvnUid()); } } //WebEntry-Event - Delete if ($bpmnEvent->getEvnType() == "START" && $bpmnEvent->getEvnMarker() == "EMPTY") { $webEntryEvent = new \ProcessMaker\BusinessModel\WebEntryEvent(); if ($webEntryEvent->existsEvent($bpmnEvent->getPrjUid(), $bpmnEvent->getEvnUid())) { $arrayWebEntryEventData = $webEntryEvent->getWebEntryEventByEvent($bpmnEvent->getPrjUid(), $bpmnEvent->getEvnUid(), true); $webEntryEvent->delete($arrayWebEntryEventData["WEE_UID"]); } } //Message-Event-Definition - Delete $arrayEventType = array("START", "END", "INTERMEDIATE"); $arrayEventMarker = array("MESSAGETHROW", "MESSAGECATCH"); if (in_array($bpmnEvent->getEvnType(), $arrayEventType) && in_array($bpmnEvent->getEvnMarker(), $arrayEventMarker)) { $messageEventDefinition = new \ProcessMaker\BusinessModel\MessageEventDefinition(); if ($messageEventDefinition->existsEvent($bpmnEvent->getPrjUid(), $bpmnEvent->getEvnUid())) { $arrayMessageEventDefinitionData = $messageEventDefinition->getMessageEventDefinitionByEvent($bpmnEvent->getPrjUid(), $bpmnEvent->getEvnUid(), true); $messageEventDefinition->delete($arrayMessageEventDefinitionData["MSGED_UID"]); } } //Element-Task-Relation - Delete $this->removeElementTaskRelation($bpmnEvent->getEvnUid(), "bpmnEvent"); } catch (\Exception $e) { throw $e; } }