ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilIntermediateThrowEventElement Class Reference

Class ilIntermediateThrowEventElement. More...

+ Inheritance diagram for ilIntermediateThrowEventElement:
+ Collaboration diagram for ilIntermediateThrowEventElement:

Public Member Functions

 getPHP ($element, ilWorkflowScaffold $class_object)
 
- Public Member Functions inherited from ilBaseElement
 getBpmn2Array ()
 
 setBpmn2Array ($bpmn2_array)
 
 handleDataAssociations ($element, $class_object, $element_varname)
 
 getDataInputAssociationIdentifiers ($element)
 
 getDataOutputAssociationIdentifiers ($element)
 

Data Fields

 $element_varname
 

Additional Inherited Members

- Protected Attributes inherited from ilBaseElement
 $bpmn2_array
 

Detailed Description

Member Function Documentation

◆ getPHP()

ilIntermediateThrowEventElement::getPHP (   $element,
ilWorkflowScaffold  $class_object 
)
Parameters
$element
\ilWorkflowScaffold$class_object
Returns
string

Definition at line 23 of file class.ilIntermediateThrowEventElement.php.

References $code, ilBPMN2ParserUtils\extractILIASEventDefinitionFromProcess(), ilWorkflowScaffold\registerRequire(), and ilBPMN2ParserUtils\xsIDToPHPVarname().

24  {
25  $code = "";
26  $element_id = ilBPMN2ParserUtils::xsIDToPHPVarname($element['attributes']['id']);
27  $this->element_varname = '$_v_' . $element_id;
28 
29  $event_definition = null;
30  if (count($element['children'])) {
31  foreach ($element['children'] as $child) {
32  if ($child['name'] == 'messageEventDefinition') {
33  $event_definition = ilBPMN2ParserUtils::extractILIASEventDefinitionFromProcess($child['attributes']['messageRef'], 'message', $this->bpmn2_array);
34  }
35  if ($child['name'] == 'signalEventDefinition') {
36  $event_definition = ilBPMN2ParserUtils::extractILIASEventDefinitionFromProcess($child['attributes']['signalRef'], 'signal', $this->bpmn2_array);
37  }
38  }
39  }
40 
41  $class_object->registerRequire('./Services/WorkflowEngine/classes/nodes/class.ilBasicNode.php');
42  $code .= '
43  ' . $this->element_varname . ' = new ilBasicNode($this);
44  $this->addNode(' . $this->element_varname . ');
45  ' . $this->element_varname . '->setName(\'' . $this->element_varname . '\');
46  ';
47 
48  if (isset($event_definition['type']) && isset($event_definition['content'])) {
49  $class_object->registerRequire('./Services/WorkflowEngine/classes/activities/class.ilEventRaisingActivity.php');
50  $code .= '
51  ' . $this->element_varname . '_throwEventActivity = new ilEventRaisingActivity(' . $this->element_varname . ');
52  ' . $this->element_varname . '_throwEventActivity->setName(\'' . $this->element_varname . '\');
53  ' . $this->element_varname . '_throwEventActivity->setEventType("' . $event_definition['type'] . '");
54  ' . $this->element_varname . '_throwEventActivity->setEventName("' . $event_definition['content'] . '");
55  ' . $this->element_varname . '->addActivity(' . $this->element_varname . '_throwEventActivity);
56  ';
57  }
58 
59  return $code;
60  }
static extractILIASEventDefinitionFromProcess($start_event_ref, $type, $bpmn2_array)
$code
Definition: example_050.php:99
Class ilRuntime.
+ Here is the call graph for this function:

Field Documentation

◆ $element_varname

ilIntermediateThrowEventElement::$element_varname

Definition at line 15 of file class.ilIntermediateThrowEventElement.php.


The documentation for this class was generated from the following file: