24 {
27 $this->element_varname = '$_v_'.$element_id;
28
29 $event_definition = null;
30
31 $terminate = false;
32
33 if(count($element['children']))
34 {
35 foreach ($element['children'] as $child)
36 {
37 if($child['name'] == 'messageEventDefinition')
38 {
40 $child['attributes']['messageRef'], 'message', $this->bpmn2_array);
41 }
42 if($child['name'] == 'signalEventDefinition')
43 {
45 $child['attributes']['signalRef'], 'signal', $this->bpmn2_array);
46 }
47 if($child['name'] == 'terminateEventDefinition')
48 {
49 $terminate = true;
50 }
51 }
52 }
53
54 $class_object->
registerRequire(
'./Services/WorkflowEngine/classes/nodes/class.ilBasicNode.php');
56 ' . $this->element_varname . ' = new ilBasicNode($this);
57 $this->addNode(' . $this->element_varname . ');
58 ' . $this->element_varname . '->setName(\'' . $this->element_varname . '\');
59 ';
60
61 if(isset($event_definition['type']) && isset($event_definition['content']))
62 {
63 $class_object->registerRequire('./
Services/WorkflowEngine/classes/activities/
class.ilEventRaisingActivity.php
');
64 $code .= '
65 ' . $this->element_varname . '_throwEventActivity =
new ilEventRaisingActivity(
' . $this->element_varname . ');
66 ' . $this->element_varname . '_throwEventActivity->setName(\'' . $this->element_varname . '_throwEventActivity\');
67 ' . $this->element_varname . '_throwEventActivity->setEventType("'.$event_definition['type'].'");
68 ' . $this->element_varname . '_throwEventActivity->setEventName("'.$event_definition['content'].'");
69 ' . $this->element_varname . '->addActivity(' . $this->element_varname . '_throwEventActivity);
70 ';
71 }
72
73 if($terminate)
74 {
75 $class_object->
registerRequire(
'./Services/WorkflowEngine/classes/activities/class.ilStopWorkflowActivity.php');
77 ' . $this->element_varname . '_terminationEventActivity = new ilStopWorkflowActivity(' . $this->element_varname . ');
78 ' . $this->element_varname . '->addActivity(' . $this->element_varname . '_terminationEventActivity);
79 ';
80 }
81
83
85 }
static extractILIASEventDefinitionFromProcess($start_event_ref, $type, $bpmn2_array)
static xsIDToPHPVarname($xsID)
handleDataAssociations($element, $class_object, $element_varname)
@noinspection PhpIncludeInspection
registerRequire($require)