14 #region Requires / File inclusion
36 if(!in_array($require, $this->
requires))
38 $this->
requires[] = $require;
48 foreach($this->
requires as $required_file)
50 $requires .=
"require_once '" . $required_file .
"';\n";
57 #region StartEvent Message Registration and Handling
67 $this->start_event_refs[] = array(
'type' =>
'message',
'ref' => $start_event_ref);
75 $this->start_event_refs[] = array(
'type' =>
'signal',
'ref' => $start_event_ref);
83 $this->start_event_refs[] = array(
'type' =>
'timeDate',
'ref' => $start_event_ref);
91 $event_definitions = array();
92 foreach((array)$this->start_event_refs as $start_event_ref)
94 $event_definition = array();
95 switch($start_event_ref[
'type'])
99 $start_event_ref[
'ref'],
106 $start_event_ref[
'ref'],
115 $event_definitions[] = $event_definition;
118 if(count($event_definitions))
121 public static $startEventRequired = true;
123 public static function getStartEventInfo()
125 foreach ($event_definitions as $event_definition)
128 $events[] = ' .
"array(
129 'type' => '".$event_definition[
'type'] .
"',
130 'content' => '".$event_definition[
'content'] .
"',
131 'subject_type' => '".$event_definition[
'subject_type'] .
"',
132 'subject_id' => '".$event_definition[
'subject_id'] .
"',
133 'context_type' => '".$event_definition[
'context_type'] .
"',
134 'context_id' => '".$event_definition[
'context_id'] .
"',
147 public static $startEventRequired = false;
167 $this->auxilliary_methods[] = $auxilliary_method;
172 $this->
registerRequire(
'./Services/WorkflowEngine/classes/workflows/class.ilBaseWorkflow.php');
174 $this->auxilliary_methods = array();
199 $pre_constructor_content .=
"
200 class " . $this->workflow_name .
" extends ilBaseWorkflow
203 public function __construct()
207 $post_constructor_content =
"
209 foreach($this->auxilliary_methods as $auxilliary_method)
211 $post_constructor_content .=
"
213 " . $auxilliary_method .
"
216 $post_constructor_content .=
"
220 return $pre_constructor_content . $this->constructor_method_content . $post_constructor_content;
231 foreach((array)$this->bpmn2_array[
'children'] as $elements)
233 foreach((array)$elements[
'children'] as $element)
235 if ($element[
'name'] ==
'startEvent' && @$element[
'children'][0][
'name'] ==
'timerEventDefinition')
237 $timer_element = $element[
'children'][0];
238 $content = $timer_element[
'children'][0][
'content'];
247 'type' =>
'time_passed',
248 'content' =>
'time_passed',
249 'subject_type' =>
'none',
251 'context_type' =>
'none',
253 'listening_start' =>
$start,
254 'listening_end' => $end
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())
An exception for terminatinating execution or to throw for unit testing.
static extractILIASEventDefinitionFromProcess($start_event_ref, $type, $bpmn2_array)
Class ilWorkflowScaffold.
registerStartEventRef($start_event_ref)
setWorkflowName($workflow_name)
__construct($bpmn2_array)
$constructor_method_content
addAuxilliaryMethod($auxilliary_method)
registerStartSignalRef($start_event_ref)
setConstructorMethodContent($constructor_method_content)
getConstructorMethodContent()
getTimeDateEventDefinition($start_event_ref)
registerStartTimerRef($start_event_ref)
registerRequire($require)