ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ParallelGateway_Forking_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/emitters/class.ilActivationEmitter.php';
5require_once './Services/WorkflowEngine/classes/detectors/class.ilSimpleDetector.php';
6
8 {
9
10 public static $startEventRequired = false;
11
12 public function __construct()
13 {
14
15 $_v_StartEvent_1 = new ilBasicNode($this);
16 $this->addNode($_v_StartEvent_1);
17 $_v_StartEvent_1->setName('$_v_StartEvent_1');
18
19 $this->setStartNode($_v_StartEvent_1);
20
21 $_v_EndEvent_2 = new ilBasicNode($this);
22 $this->addNode($_v_EndEvent_2);
23 $_v_EndEvent_2->setName('$_v_EndEvent_2');
24
25 $_v_ParallelGateway_1 = new ilBasicNode($this);
26 $_v_ParallelGateway_1->setName('$_v_ParallelGateway_1');
27 $this->addNode($_v_ParallelGateway_1);
28
29 $_v_EndEvent_4 = new ilBasicNode($this);
30 $this->addNode($_v_EndEvent_4);
31 $_v_EndEvent_4->setName('$_v_EndEvent_4');
32
33 $_v_EndEvent_5 = new ilBasicNode($this);
34 $this->addNode($_v_EndEvent_5);
35 $_v_EndEvent_5->setName('$_v_EndEvent_5');
36
37 $_v_ParallelGateway_1_detector = new ilSimpleDetector($_v_ParallelGateway_1);
38 $_v_ParallelGateway_1_detector->setName('$_v_ParallelGateway_1_detector');
39 $_v_ParallelGateway_1_detector->setSourceNode($_v_StartEvent_1);
40 $_v_ParallelGateway_1->addDetector($_v_ParallelGateway_1_detector);
41 $_v_StartEvent_1_emitter = new ilActivationEmitter($_v_StartEvent_1);
42 $_v_StartEvent_1_emitter->setName('$_v_StartEvent_1_emitter');
43 $_v_StartEvent_1_emitter->setTargetDetector($_v_ParallelGateway_1_detector);
44 $_v_StartEvent_1->addEmitter($_v_StartEvent_1_emitter);
45
46 $_v_EndEvent_5_detector = new ilSimpleDetector($_v_EndEvent_5);
47 $_v_EndEvent_5_detector->setName('$_v_EndEvent_5_detector');
48 $_v_EndEvent_5_detector->setSourceNode($_v_ParallelGateway_1);
49 $_v_EndEvent_5->addDetector($_v_EndEvent_5_detector);
50 $_v_ParallelGateway_1_emitter = new ilActivationEmitter($_v_ParallelGateway_1);
51 $_v_ParallelGateway_1_emitter->setName('$_v_ParallelGateway_1_emitter');
52 $_v_ParallelGateway_1_emitter->setTargetDetector($_v_EndEvent_5_detector);
53 $_v_ParallelGateway_1->addEmitter($_v_ParallelGateway_1_emitter);
54
55 $_v_EndEvent_2_detector = new ilSimpleDetector($_v_EndEvent_2);
56 $_v_EndEvent_2_detector->setName('$_v_EndEvent_2_detector');
57 $_v_EndEvent_2_detector->setSourceNode($_v_ParallelGateway_1);
58 $_v_EndEvent_2->addDetector($_v_EndEvent_2_detector);
59 $_v_ParallelGateway_1_emitter = new ilActivationEmitter($_v_ParallelGateway_1);
60 $_v_ParallelGateway_1_emitter->setName('$_v_ParallelGateway_1_emitter');
61 $_v_ParallelGateway_1_emitter->setTargetDetector($_v_EndEvent_2_detector);
62 $_v_ParallelGateway_1->addEmitter($_v_ParallelGateway_1_emitter);
63
64 $_v_EndEvent_4_detector = new ilSimpleDetector($_v_EndEvent_4);
65 $_v_EndEvent_4_detector->setName('$_v_EndEvent_4_detector');
66 $_v_EndEvent_4_detector->setSourceNode($_v_ParallelGateway_1);
67 $_v_EndEvent_4->addDetector($_v_EndEvent_4_detector);
68 $_v_ParallelGateway_1_emitter = new ilActivationEmitter($_v_ParallelGateway_1);
69 $_v_ParallelGateway_1_emitter->setName('$_v_ParallelGateway_1_emitter');
70 $_v_ParallelGateway_1_emitter->setTargetDetector($_v_EndEvent_4_detector);
71 $_v_ParallelGateway_1->addEmitter($_v_ParallelGateway_1_emitter);
72
73 }
74 }
75
76?>
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