ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ExclusiveGateway_Join_Simple_goldsample.php
Go to the documentation of this file.
1 <?php
2 require_once './Services/WorkflowEngine/classes/workflows/class.ilBaseWorkflow.php';
3 require_once './Services/WorkflowEngine/classes/nodes/class.ilBasicNode.php';
4 require_once './Services/WorkflowEngine/classes/nodes/class.ilCaseNode.php';
5 require_once './Services/WorkflowEngine/classes/emitters/class.ilActivationEmitter.php';
6 require_once './Services/WorkflowEngine/classes/detectors/class.ilSimpleDetector.php';
7 
9  {
10 
11  public static $startEventRequired = false;
12 
13  public function __construct()
14  {
15 
16  $_v_StartEvent_1 = new ilBasicNode($this);
17  $this->addNode($_v_StartEvent_1);
18  $_v_StartEvent_1->setName('$_v_StartEvent_1');
19 
20  $this->setStartNode($_v_StartEvent_1);
21 
22  $_v_ExclusiveGateway_1 = new ilBasicNode($this);
23  $_v_ExclusiveGateway_1->setName('$_v_ExclusiveGateway_1');
24  $this->addNode($_v_ExclusiveGateway_1);
25 
26  $_v_IntermediateCatchEvent_2 = new ilBasicNode($this);
27  $this->addNode($_v_IntermediateCatchEvent_2);
28  $_v_IntermediateCatchEvent_2->setName('$_v_IntermediateCatchEvent_2');
29 
30  $_v_IntermediateCatchEvent_1 = new ilBasicNode($this);
31  $this->addNode($_v_IntermediateCatchEvent_1);
32  $_v_IntermediateCatchEvent_1->setName('$_v_IntermediateCatchEvent_1');
33 
34  $_v_ParallelGateway_1 = new ilCaseNode($this);
35  $_v_ParallelGateway_1->setName('$_v_ParallelGateway_1');
36  $_v_ParallelGateway_1->setIsExclusiveJoin(true);
37  $this->addNode($_v_ParallelGateway_1);
38 
39  $_v_EndEvent_3 = new ilBasicNode($this);
40  $this->addNode($_v_EndEvent_3);
41  $_v_EndEvent_3->setName('$_v_EndEvent_3');
42 
43  $_v_ExclusiveGateway_1_detector = new ilSimpleDetector($_v_ExclusiveGateway_1);
44  $_v_ExclusiveGateway_1_detector->setName('$_v_ExclusiveGateway_1_detector');
45  $_v_ExclusiveGateway_1_detector->setSourceNode($_v_StartEvent_1);
46  $_v_ExclusiveGateway_1->addDetector($_v_ExclusiveGateway_1_detector);
47  $_v_StartEvent_1_emitter = new ilActivationEmitter($_v_StartEvent_1);
48  $_v_StartEvent_1_emitter->setName('$_v_StartEvent_1_emitter');
49  $_v_StartEvent_1_emitter->setTargetDetector($_v_ExclusiveGateway_1_detector);
50  $_v_StartEvent_1->addEmitter($_v_StartEvent_1_emitter);
51 
52  $_v_IntermediateCatchEvent_1_detector = new ilSimpleDetector($_v_IntermediateCatchEvent_1);
53  $_v_IntermediateCatchEvent_1_detector->setName('$_v_IntermediateCatchEvent_1_detector');
54  $_v_IntermediateCatchEvent_1_detector->setSourceNode($_v_ExclusiveGateway_1);
55  $_v_IntermediateCatchEvent_1->addDetector($_v_IntermediateCatchEvent_1_detector);
56  $_v_ExclusiveGateway_1_emitter = new ilActivationEmitter($_v_ExclusiveGateway_1);
57  $_v_ExclusiveGateway_1_emitter->setName('$_v_ExclusiveGateway_1_emitter');
58  $_v_ExclusiveGateway_1_emitter->setTargetDetector($_v_IntermediateCatchEvent_1_detector);
59  $_v_ExclusiveGateway_1->addEmitter($_v_ExclusiveGateway_1_emitter);
60 
61  $_v_IntermediateCatchEvent_2_detector = new ilSimpleDetector($_v_IntermediateCatchEvent_2);
62  $_v_IntermediateCatchEvent_2_detector->setName('$_v_IntermediateCatchEvent_2_detector');
63  $_v_IntermediateCatchEvent_2_detector->setSourceNode($_v_ExclusiveGateway_1);
64  $_v_IntermediateCatchEvent_2->addDetector($_v_IntermediateCatchEvent_2_detector);
65  $_v_ExclusiveGateway_1_emitter = new ilActivationEmitter($_v_ExclusiveGateway_1);
66  $_v_ExclusiveGateway_1_emitter->setName('$_v_ExclusiveGateway_1_emitter');
67  $_v_ExclusiveGateway_1_emitter->setTargetDetector($_v_IntermediateCatchEvent_2_detector);
68  $_v_ExclusiveGateway_1->addEmitter($_v_ExclusiveGateway_1_emitter);
69 
70  $_v_ParallelGateway_1_detector = new ilSimpleDetector($_v_ParallelGateway_1);
71  $_v_ParallelGateway_1_detector->setName('$_v_ParallelGateway_1_detector');
72  $_v_ParallelGateway_1_detector->setSourceNode($_v_IntermediateCatchEvent_1);
73  $_v_ParallelGateway_1->addDetector($_v_ParallelGateway_1_detector);
74  $_v_IntermediateCatchEvent_1_emitter = new ilActivationEmitter($_v_IntermediateCatchEvent_1);
75  $_v_IntermediateCatchEvent_1_emitter->setName('$_v_IntermediateCatchEvent_1_emitter');
76  $_v_IntermediateCatchEvent_1_emitter->setTargetDetector($_v_ParallelGateway_1_detector);
77  $_v_IntermediateCatchEvent_1->addEmitter($_v_IntermediateCatchEvent_1_emitter);
78 
79  $_v_ParallelGateway_1_detector = new ilSimpleDetector($_v_ParallelGateway_1);
80  $_v_ParallelGateway_1_detector->setName('$_v_ParallelGateway_1_detector');
81  $_v_ParallelGateway_1_detector->setSourceNode($_v_IntermediateCatchEvent_2);
82  $_v_ParallelGateway_1->addDetector($_v_ParallelGateway_1_detector);
83  $_v_IntermediateCatchEvent_2_emitter = new ilActivationEmitter($_v_IntermediateCatchEvent_2);
84  $_v_IntermediateCatchEvent_2_emitter->setName('$_v_IntermediateCatchEvent_2_emitter');
85  $_v_IntermediateCatchEvent_2_emitter->setTargetDetector($_v_ParallelGateway_1_detector);
86  $_v_IntermediateCatchEvent_2->addEmitter($_v_IntermediateCatchEvent_2_emitter);
87 
88  $_v_EndEvent_3_detector = new ilSimpleDetector($_v_EndEvent_3);
89  $_v_EndEvent_3_detector->setName('$_v_EndEvent_3_detector');
90  $_v_EndEvent_3_detector->setSourceNode($_v_ParallelGateway_1);
91  $_v_EndEvent_3->addDetector($_v_EndEvent_3_detector);
92  $_v_ParallelGateway_1_emitter = new ilActivationEmitter($_v_ParallelGateway_1);
93  $_v_ParallelGateway_1_emitter->setName('$_v_ParallelGateway_1_emitter');
94  $_v_ParallelGateway_1_emitter->setTargetDetector($_v_EndEvent_3_detector);
95  $_v_ParallelGateway_1->addEmitter($_v_ParallelGateway_1_emitter);
96 
97  }
98  }
99 
100 ?>
PhpIncludeInspection
PhpIncludeInspection
addNode(ilNode $node)
This method adds a node to the workflow.
PhpIncludeInspection
setStartNode(ilNode $node)
Sets the start node of the workflow.
PhpIncludeInspection