ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ExclusiveGateway_Join_Simple_goldsample.php
Go to the documentation of this file.
1<?php
2require_once './Services/WorkflowEngine/classes/workflows/class.ilBaseWorkflow.php';
3require_once './Services/WorkflowEngine/classes/nodes/class.ilBasicNode.php';
4require_once './Services/WorkflowEngine/classes/nodes/class.ilCaseNode.php';
5require_once './Services/WorkflowEngine/classes/emitters/class.ilActivationEmitter.php';
6require_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?>
An exception for terminatinating execution or to throw for unit testing.
@noinspection PhpIncludeInspection
@noinspection PhpIncludeInspection
setStartNode(ilNode $node)
Sets the start node of the workflow.
addNode(ilNode $node)
This method adds a node to the workflow.
@noinspection PhpIncludeInspection
@noinspection PhpIncludeInspection
@noinspection PhpIncludeInspection