Class AbstractBPMNtoNESTCongruentConverter<T extends NESTAbstractWorkflowObject>

java.lang.Object
de.uni_trier.wi2.procake.utils.conversion.bpmn.AbstractBPMNtoNESTConverterBase<T>
de.uni_trier.wi2.procake.utils.conversion.bpmn.AbstractBPMNtoNESTCongruentConverter<T>
All Implemented Interfaces:
OneWayConverter<org.camunda.bpm.model.bpmn.BpmnModelInstance,T>
Direct Known Subclasses:
DefaultBPMNtoNESTCongruentConverter

public abstract class AbstractBPMNtoNESTCongruentConverter<T extends NESTAbstractWorkflowObject> extends AbstractBPMNtoNESTConverterBase<T>
Abstract implementation of a converter for converting a BPMN2 object directly into a congruent NESTWorkflow object. This converter does not differentiate between different controlflow node types such as XOR, AND, LOOP and also does not differentiate between start and end nodes.

The following BPMN 2.0 elements are supported:

  • - StartEvent, EndEvent (no intermediate events)
  • - Task, ServiceTask, ScriptTask, ManualTask
  • - SubProcess
  • - ExclusiveGateway, EventBasedGateway, ParallelGateway
  • - SequenceFlow
Author:
Priyabanta Sandulu, Christian Zeyen
  • Constructor Details

    • AbstractBPMNtoNESTCongruentConverter

      public AbstractBPMNtoNESTCongruentConverter(Model model)
  • Method Details

    • getControlflowNodeClassName

      protected abstract String getControlflowNodeClassName(org.camunda.bpm.model.bpmn.instance.ExclusiveGateway currentNode)
    • getControlflowNodeSemantic

      protected abstract DataObject getControlflowNodeSemantic(org.camunda.bpm.model.bpmn.instance.ExclusiveGateway currentNode)
    • getControlflowNodeClassName

      protected abstract String getControlflowNodeClassName(org.camunda.bpm.model.bpmn.instance.EventBasedGateway currentNode)
    • getControlflowNodeSemantic

      protected abstract DataObject getControlflowNodeSemantic(org.camunda.bpm.model.bpmn.instance.EventBasedGateway currentNode)
    • getControlflowNodeClassName

      protected abstract String getControlflowNodeClassName(org.camunda.bpm.model.bpmn.instance.ParallelGateway currentNode)
    • getControlflowNodeSemantic

      protected abstract DataObject getControlflowNodeSemantic(org.camunda.bpm.model.bpmn.instance.ParallelGateway currentNode)
    • getMatchingBlockControlflowNode

      protected abstract String getMatchingBlockControlflowNode(org.camunda.bpm.model.bpmn.instance.FlowNode currentNode)
    • convert

      protected NESTAbstractWorkflowObject convert(org.camunda.bpm.model.bpmn.instance.BaseElement process, String workflowNodeClassName, DataObject workflowNodeSemantic, boolean subprocess)
      Specified by:
      convert in class AbstractBPMNtoNESTConverterBase<T extends NESTAbstractWorkflowObject>
    • convertBpmnNode

      public NESTNodeObject convertBpmnNode(NESTAbstractWorkflowObject nestWorkflow, org.camunda.bpm.model.bpmn.instance.FlowNode bpmnNode)