Class NESTWorkflowModifierImpl
- java.lang.Object
-
- de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTUtils<G>
-
- de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTGraphModifierImpl<G>
-
- de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTAbstractWorkflowModifierImpl<NESTWorkflowObject>
-
- de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTWorkflowModifierImpl
-
- All Implemented Interfaces:
NESTAbstractWorkflowModifier,NESTGraphModifier,NESTWorkflowModifier
public class NESTWorkflowModifierImpl extends NESTAbstractWorkflowModifierImpl<NESTWorkflowObject> implements NESTWorkflowModifier
Definition of the basic nest graph modifier. Refer to the corresponding InterfaceNESTWorkflowModifierfor more information.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classNESTWorkflowModifierImpl.NESTControlflowNodePairImpl-
Nested classes/interfaces inherited from interface de.uni_trier.wi2.procake.data.object.nest.utils.NESTWorkflowModifier
NESTWorkflowModifier.NESTControlflowNodePair
-
-
Field Summary
Fields Modifier and Type Field Description protected StringDEFAULT_AND_END_NODE_CLASS_NAMEprotected StringDEFAULT_AND_START_NODE_CLASS_NAMEprotected StringDEFAULT_CONTROLFLOW_NODE_CLASS_NAMEprotected StringDEFAULT_LOOP_END_NODE_CLASS_NAMEprotected StringDEFAULT_LOOP_START_NODE_CLASS_NAMEprotected StringDEFAULT_OR_END_NODE_CLASS_NAMEprotected StringDEFAULT_OR_START_NODE_CLASS_NAMEprotected StringDEFAULT_XOR_END_NODE_CLASS_NAMEprotected StringDEFAULT_XOR_START_NODE_CLASS_NAME-
Fields inherited from class de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTAbstractWorkflowModifierImpl
DEFAULT_CONSTRAINT_EDGE_CLASS_NAME, DEFAULT_CONTROLFLOW_EDGE_CLASS_NAME, DEFAULT_DATA_NODE_CLASS_NAME, DEFAULT_DATAFLOW_EDGE_CLASS_NAME, DEFAULT_PART_OF_EDGE_CLASS_NAME, DEFAULT_SUB_WORKFLOW_NODE_CLASS_NAME, DEFAULT_TASK_NODE_CLASS_NAME, DEFAULT_WORKFLOW_NODE_CLASS_NAME
-
-
Constructor Summary
Constructors Constructor Description NESTWorkflowModifierImpl(NESTWorkflowObject graph)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetDefaultAndEndNodeClassName()StringgetDefaultAndStartNodeClassName()StringgetDefaultLoopEndNodeClassName()StringgetDefaultLoopStartNodeClassName()StringgetDefaultOrEndNodeClassName()StringgetDefaultOrStartNodeClassName()StringgetDefaultXorEndNodeClassName()StringgetDefaultXorStartNodeClassName()protected voidinitializeDefaultClassNames(NESTAbstractWorkflowObject graph)booleaninsertBlockSequenceNode(NESTSequenceNodeObject newSequenceNode, NESTSequenceNodeObject preNode, NESTSequenceNodeObject succNode, DataObject controlflowEdgeSemanticDescriptor, DataObject partOfEdgeSemanticDescriptor)Inserts a given node between the given predecessor/ successor node in the related nest graph including all linking controlflow edges.NESTAndEndNodeObjectinsertNewAndEndNode(DataObject semanticDescriptor)Creates a new and join node.NESTWorkflowModifier.NESTControlflowNodePairinsertNewAndSequence(DataObject semDescrStart, DataObject semDescrEnd)Inserts a new AND (parallel execution) sequence into the graph.NESTAndStartNodeObjectinsertNewAndStartNode(DataObject semanticDescriptor)Creates a new and split node.NESTWorkflowModifier.NESTControlflowNodePairinsertNewControlflowNodePair(NESTControlflowNodeObject startNode, NESTControlflowNodeObject endNode)Inserts a new controlflow block into the NEST graph by using the given parameters.<t extends NESTEdgeObject>
tinsertNewEdge(NESTNodeObject pre, NESTNodeObject post, String edgeClassName, DataObject semanticDescriptor)Creates a new edge of the given class with a unique id and inserts it in the nest graph between the given nodes.NESTLoopEndNodeObjectinsertNewLoopEndNode(DataObject semanticDescriptor)Creates a new loop split node.NESTWorkflowModifier.NESTControlflowNodePairinsertNewLoopSequence(DataObject semDescrStart, DataObject semDescrEnd)Inserts a new LOOP (execution multiple times) sequence into the graph.NESTLoopStartNodeObjectinsertNewLoopStartNode(DataObject semanticDescriptor)Creates a new loop join node.<t extends NESTNodeObject>
tinsertNewNode(String nodeClassName, NESTNodeObject parentWorkflowNode, DataObject semanticDescriptor, DataObject partOfEdgeSemanticDescriptor)NESTOrEndNodeObjectinsertNewOrEndNode(DataObject semanticDescriptor)Creates a new or join node.NESTWorkflowModifier.NESTControlflowNodePairinsertNewOrSequence(DataObject semDescrStart, DataObject semDescrEnd)Inserts a new OR sequence into the graph.NESTOrStartNodeObjectinsertNewOrStartNode(DataObject semanticDescriptor)Creates a new or split node.NESTXorEndNodeObjectinsertNewXorEndNode(DataObject semanticDescriptor)Creates a new xor join node.NESTWorkflowModifier.NESTControlflowNodePairinsertNewXorSequence(DataObject semDescrStart, DataObject semDescrEnd)Inserts a new XOR (exclusive or) sequence into the graph.NESTXorStartNodeObjectinsertNewXorStartNode(DataObject semanticDescriptor)Creates a new xor split node.Map<String,String>insertSubgraph(NESTAbstractWorkflowObject subgraphToInsert, NESTSequenceNodeObject preNode, NESTSequenceNodeObject postNode, NESTNodeObject parentNode)Adds a given sub-graph into a target graph this modifier is responsible for.voidremoveControlflowBlock(NESTControlflowNodeObject controlflowNode)voidremoveControlflowBlockNodes(NESTControlflowNodeObject startControlflowNode)Removes controlflow block nodes identified by the given start controlflow node.voidremoveControlflowNodes(NESTControlflowNodeObject controlflowNode)voidremoveEmptyBlockLinks()Removes direct links between from start controlflow nodes to end controlfow nodes, if there exists other branches in between.voidremoveUnusedControlflowBlocks()Removes unused controlflow blocks, if both branches are empty (no non-empty branch exists).voidsetDefaultAndEndNodeClassName(String defaultAndEndNodeClassName)voidsetDefaultAndStartNodeClassName(String defaultAndStartNodeClassName)voidsetDefaultLoopEndNodeClassName(String defaultLoopEndNodeClassName)voidsetDefaultLoopStartNodeClassName(String defaultLoopStartNodeClassName)voidsetDefaultOrEndNodeClassName(String defaultOrEndNodeClassName)voidsetDefaultOrStartNodeClassName(String defaultOrStartNodeClassName)voidsetDefaultXorEndNodeClassName(String defaultXorEndNodeClassName)voidsetDefaultXorStartNodeClassName(String defaultXorStartNodeClassName)-
Methods inherited from class de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTAbstractWorkflowModifierImpl
checkPrePostNodes, dropBlockSequenceNode, dropBlockSequenceNode, getDefaultConstraintEdgeClassName, getDefaultControlflowEdgeClassName, getDefaultDataflowEdgeClassName, getDefaultDataNodeClassName, getDefaultPartOfEdgeClassName, getDefaultSubWorkflowNodeClassName, getDefaultTaskNodeClassName, getDefaultWorkflowNodeClassName, insertNewConstraintEdge, insertNewControlflowEdge, insertNewDataflowEdge, insertNewDataNode, insertNewDataNode, insertNewNode, insertNewPartOfEdge, insertNewSubWorkflowNode, insertNewTaskNode, insertNewTaskNode, insertNewWorkflowNode, insertNewWorkflowNode, insertSubgraphEdges, removeControlflowEdge, removeDataflowEdge, removeDataNode, removeSubgraph, removeSubWorkflowNode, removeTaskNode, removeUnproductiveTasks, removeUnusedDataObjects, setDefaultConstraintEdgeClassName, setDefaultControlflowEdgeClassName, setDefaultDataflowEdgeClassName, setDefaultDataNodeClassName, setDefaultPartOfEdgeClassName, setDefaultSubWorkflowNodeClassName, setDefaultTaskNodeClassName, setDefaultWorkflowNodeClassName, validateClassName
-
Methods inherited from class de.uni_trier.wi2.procake.data.object.nest.utils.impl.NESTGraphModifierImpl
checkAllowedGraphClasses, extractPartialGraph, removeEdge, removeNode
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.uni_trier.wi2.procake.data.object.nest.utils.NESTAbstractWorkflowModifier
dropBlockSequenceNode, dropBlockSequenceNode, getDefaultConstraintEdgeClassName, getDefaultControlflowEdgeClassName, getDefaultDataflowEdgeClassName, getDefaultDataNodeClassName, getDefaultPartOfEdgeClassName, getDefaultSubWorkflowNodeClassName, getDefaultTaskNodeClassName, getDefaultWorkflowNodeClassName, insertNewConstraintEdge, insertNewControlflowEdge, insertNewDataflowEdge, insertNewDataNode, insertNewDataNode, insertNewPartOfEdge, insertNewSubWorkflowNode, insertNewTaskNode, insertNewTaskNode, insertNewWorkflowNode, insertNewWorkflowNode, removeControlflowEdge, removeDataflowEdge, removeDataNode, removeSubgraph, removeSubWorkflowNode, removeTaskNode, removeUnproductiveTasks, removeUnusedDataObjects, setDefaultConstraintEdgeClassName, setDefaultControlflowEdgeClassName, setDefaultDataflowEdgeClassName, setDefaultDataNodeClassName, setDefaultPartOfEdgeClassName, setDefaultSubWorkflowNodeClassName, setDefaultTaskNodeClassName, setDefaultWorkflowNodeClassName
-
Methods inherited from interface de.uni_trier.wi2.procake.data.object.nest.utils.NESTGraphModifier
extractPartialGraph, insertNewNode, removeEdge, removeNode
-
-
-
-
Field Detail
-
DEFAULT_CONTROLFLOW_NODE_CLASS_NAME
protected String DEFAULT_CONTROLFLOW_NODE_CLASS_NAME
-
DEFAULT_AND_START_NODE_CLASS_NAME
protected String DEFAULT_AND_START_NODE_CLASS_NAME
-
DEFAULT_AND_END_NODE_CLASS_NAME
protected String DEFAULT_AND_END_NODE_CLASS_NAME
-
DEFAULT_OR_START_NODE_CLASS_NAME
protected String DEFAULT_OR_START_NODE_CLASS_NAME
-
DEFAULT_OR_END_NODE_CLASS_NAME
protected String DEFAULT_OR_END_NODE_CLASS_NAME
-
DEFAULT_XOR_START_NODE_CLASS_NAME
protected String DEFAULT_XOR_START_NODE_CLASS_NAME
-
DEFAULT_XOR_END_NODE_CLASS_NAME
protected String DEFAULT_XOR_END_NODE_CLASS_NAME
-
DEFAULT_LOOP_START_NODE_CLASS_NAME
protected String DEFAULT_LOOP_START_NODE_CLASS_NAME
-
DEFAULT_LOOP_END_NODE_CLASS_NAME
protected String DEFAULT_LOOP_END_NODE_CLASS_NAME
-
-
Constructor Detail
-
NESTWorkflowModifierImpl
public NESTWorkflowModifierImpl(NESTWorkflowObject graph)
-
-
Method Detail
-
getDefaultAndStartNodeClassName
public String getDefaultAndStartNodeClassName()
- Specified by:
getDefaultAndStartNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultAndStartNodeClassName
public void setDefaultAndStartNodeClassName(String defaultAndStartNodeClassName)
- Specified by:
setDefaultAndStartNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultAndEndNodeClassName
public String getDefaultAndEndNodeClassName()
- Specified by:
getDefaultAndEndNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultAndEndNodeClassName
public void setDefaultAndEndNodeClassName(String defaultAndEndNodeClassName)
- Specified by:
setDefaultAndEndNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultOrStartNodeClassName
public String getDefaultOrStartNodeClassName()
- Specified by:
getDefaultOrStartNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultOrStartNodeClassName
public void setDefaultOrStartNodeClassName(String defaultOrStartNodeClassName)
- Specified by:
setDefaultOrStartNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultOrEndNodeClassName
public String getDefaultOrEndNodeClassName()
- Specified by:
getDefaultOrEndNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultOrEndNodeClassName
public void setDefaultOrEndNodeClassName(String defaultOrEndNodeClassName)
- Specified by:
setDefaultOrEndNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultXorStartNodeClassName
public String getDefaultXorStartNodeClassName()
- Specified by:
getDefaultXorStartNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultXorStartNodeClassName
public void setDefaultXorStartNodeClassName(String defaultXorStartNodeClassName)
- Specified by:
setDefaultXorStartNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultXorEndNodeClassName
public String getDefaultXorEndNodeClassName()
- Specified by:
getDefaultXorEndNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultXorEndNodeClassName
public void setDefaultXorEndNodeClassName(String defaultXorEndNodeClassName)
- Specified by:
setDefaultXorEndNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultLoopStartNodeClassName
public String getDefaultLoopStartNodeClassName()
- Specified by:
getDefaultLoopStartNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultLoopStartNodeClassName
public void setDefaultLoopStartNodeClassName(String defaultLoopStartNodeClassName)
- Specified by:
setDefaultLoopStartNodeClassNamein interfaceNESTWorkflowModifier
-
getDefaultLoopEndNodeClassName
public String getDefaultLoopEndNodeClassName()
- Specified by:
getDefaultLoopEndNodeClassNamein interfaceNESTWorkflowModifier
-
setDefaultLoopEndNodeClassName
public void setDefaultLoopEndNodeClassName(String defaultLoopEndNodeClassName)
- Specified by:
setDefaultLoopEndNodeClassNamein interfaceNESTWorkflowModifier
-
insertNewNode
public <t extends NESTNodeObject> t insertNewNode(String nodeClassName, NESTNodeObject parentWorkflowNode, DataObject semanticDescriptor, DataObject partOfEdgeSemanticDescriptor)
- Specified by:
insertNewNodein interfaceNESTAbstractWorkflowModifier- Overrides:
insertNewNodein classNESTAbstractWorkflowModifierImpl<NESTWorkflowObject>- Parameters:
nodeClassName- StringparentWorkflowNode- NESTNodeObjectsemanticDescriptor- DataObject- Returns:
- NESTNodeObject
-
insertNewEdge
public <t extends NESTEdgeObject> t insertNewEdge(NESTNodeObject pre, NESTNodeObject post, String edgeClassName, DataObject semanticDescriptor)
Creates a new edge of the given class with a unique id and inserts it in the nest graph between the given nodes. The constraints for edges in NEST workflow graphs are considered in this method.- Specified by:
insertNewEdgein interfaceNESTGraphModifier- Overrides:
insertNewEdgein classNESTAbstractWorkflowModifierImpl<NESTWorkflowObject>- Parameters:
pre- NESTNodeObjectpost- NESTNodeObjectedgeClassName- StringsemanticDescriptor- Semantic Descriptor for edge- Returns:
- NESTEdgeObject
-
insertBlockSequenceNode
public boolean insertBlockSequenceNode(NESTSequenceNodeObject newSequenceNode, NESTSequenceNodeObject preNode, NESTSequenceNodeObject succNode, DataObject controlflowEdgeSemanticDescriptor, DataObject partOfEdgeSemanticDescriptor)
Description copied from interface:NESTWorkflowModifierInserts a given node between the given predecessor/ successor node in the related nest graph including all linking controlflow edges. If a unique position for the new node is given by one node, the other one can be null.- Specified by:
insertBlockSequenceNodein interfaceNESTWorkflowModifier- Parameters:
newSequenceNode- The new node to be insertedpreNode- new node is inserted behind this predecessor node in the controlflowsuccNode- new node is inserted before this successor node in the controlflow- Returns:
- true if operation was successful
-
insertNewAndStartNode
public NESTAndStartNodeObject insertNewAndStartNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new and split node.- Specified by:
insertNewAndStartNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewAndEndNode
public NESTAndEndNodeObject insertNewAndEndNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new and join node.- Specified by:
insertNewAndEndNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewOrStartNode
public NESTOrStartNodeObject insertNewOrStartNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new or split node.- Specified by:
insertNewOrStartNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewOrEndNode
public NESTOrEndNodeObject insertNewOrEndNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new or join node.- Specified by:
insertNewOrEndNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewXorStartNode
public NESTXorStartNodeObject insertNewXorStartNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new xor split node.- Specified by:
insertNewXorStartNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewXorEndNode
public NESTXorEndNodeObject insertNewXorEndNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new xor join node.- Specified by:
insertNewXorEndNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewLoopStartNode
public NESTLoopStartNodeObject insertNewLoopStartNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new loop join node.- Specified by:
insertNewLoopStartNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewLoopEndNode
public NESTLoopEndNodeObject insertNewLoopEndNode(DataObject semanticDescriptor)
Description copied from interface:NESTWorkflowModifierCreates a new loop split node.- Specified by:
insertNewLoopEndNodein interfaceNESTWorkflowModifier- Parameters:
semanticDescriptor- The semantic description of the new node.- Returns:
-
insertNewXorSequence
public NESTWorkflowModifier.NESTControlflowNodePair insertNewXorSequence(DataObject semDescrStart, DataObject semDescrEnd)
Description copied from interface:NESTWorkflowModifierInserts a new XOR (exclusive or) sequence into the graph. The sequence is not connected by any edges.- Specified by:
insertNewXorSequencein interfaceNESTWorkflowModifier- Parameters:
semDescrStart- the semantic descriptor of the split node (start node)semDescrEnd- the semantic descriptor of the join node (end node)- Returns:
- a controlflow node pair containing the added sequence nodes
-
insertNewOrSequence
public NESTWorkflowModifier.NESTControlflowNodePair insertNewOrSequence(DataObject semDescrStart, DataObject semDescrEnd)
Description copied from interface:NESTWorkflowModifierInserts a new OR sequence into the graph. The sequence is not connected by any edges.- Specified by:
insertNewOrSequencein interfaceNESTWorkflowModifier- Parameters:
semDescrStart- the semantic descriptor of the split node (start node)semDescrEnd- the semantic descriptor of the join node (end node)- Returns:
- a controlflow node pair containing the added sequence nodes
-
insertNewAndSequence
public NESTWorkflowModifier.NESTControlflowNodePair insertNewAndSequence(DataObject semDescrStart, DataObject semDescrEnd)
Description copied from interface:NESTWorkflowModifierInserts a new AND (parallel execution) sequence into the graph. The sequence is not connected by any edges.- Specified by:
insertNewAndSequencein interfaceNESTWorkflowModifier- Parameters:
semDescrStart- the semantic descriptor of the split node (start node)semDescrEnd- the semantic descriptor of the join node (end node)- Returns:
- a controlflow node pair containing the added sequence nodes
-
insertNewLoopSequence
public NESTWorkflowModifier.NESTControlflowNodePair insertNewLoopSequence(DataObject semDescrStart, DataObject semDescrEnd)
Description copied from interface:NESTWorkflowModifierInserts a new LOOP (execution multiple times) sequence into the graph. The sequence is not connected by any edges. Please note, in loops the start node is the join node and the end node is the split node!- Specified by:
insertNewLoopSequencein interfaceNESTWorkflowModifier- Parameters:
semDescrStart- the semantic descriptor of the split node (end node)semDescrEnd- the semantic descriptor of the join node (start node)- Returns:
- a controlflow node pair containing the added sequence nodes
-
insertNewControlflowNodePair
public NESTWorkflowModifier.NESTControlflowNodePair insertNewControlflowNodePair(NESTControlflowNodeObject startNode, NESTControlflowNodeObject endNode)
Description copied from interface:NESTWorkflowModifierInserts a new controlflow block into the NEST graph by using the given parameters.- Specified by:
insertNewControlflowNodePairin interfaceNESTWorkflowModifier- Parameters:
startNode- start nodeendNode- end node- Returns:
- the
NESTWorkflowModifier.NESTControlflowNodePairthat was inserted
-
insertSubgraph
public Map<String,String> insertSubgraph(NESTAbstractWorkflowObject subgraphToInsert, NESTSequenceNodeObject preNode, NESTSequenceNodeObject postNode, NESTNodeObject parentNode)
Description copied from interface:NESTAbstractWorkflowModifierAdds a given sub-graph into a target graph this modifier is responsible for. A parent node (of the target graph) can be set. Otherwise, the workflow node of the target workflow is used as parent node The pre node and the post node are nodes that will be connected to the start node or the end node, respectively. All nodes and edges of the sub-graph will be copied into the target graph. Consequently, the ids will be altered! A map that contains the old-to-new-mapping-ID's is returned by this method.- Specified by:
insertSubgraphin interfaceNESTAbstractWorkflowModifier- Overrides:
insertSubgraphin classNESTAbstractWorkflowModifierImpl<NESTWorkflowObject>- Parameters:
subgraphToInsert- the sub-graph that should be added to the target graphpreNode- node of the target graph; this node will be connected to the start node of the sub-graph with a control-flow edge. If preNode is null, no control-flow edge is inserted.postNode- node of the target graph; the end node of the sub-graph will be connected to this node with a control-flow edge. If postNode is null, no control-flow edge is inserted.parentNode- workflow node or sub-workflow node of the target graph; all nodes that were previously connected to the workflow node of the sub-graph will be linked to the parent node via part-of edges. If parentNode is null, the workflow node of the target workflow is used as parent node.- Returns:
- a map that contains the old-to-new-mapping-ID's
-
removeControlflowBlock
public void removeControlflowBlock(NESTControlflowNodeObject controlflowNode)
- Specified by:
removeControlflowBlockin interfaceNESTWorkflowModifier
-
removeUnusedControlflowBlocks
public void removeUnusedControlflowBlocks()
Description copied from interface:NESTWorkflowModifierRemoves unused controlflow blocks, if both branches are empty (no non-empty branch exists). Further removes AND blocks, if they only contain a single branch (2nd branch is empty).- Specified by:
removeUnusedControlflowBlocksin interfaceNESTWorkflowModifier
-
removeEmptyBlockLinks
public void removeEmptyBlockLinks()
Description copied from interface:NESTWorkflowModifierRemoves direct links between from start controlflow nodes to end controlfow nodes, if there exists other branches in between.- Specified by:
removeEmptyBlockLinksin interfaceNESTWorkflowModifier
-
removeControlflowNodes
public void removeControlflowNodes(NESTControlflowNodeObject controlflowNode)
- Specified by:
removeControlflowNodesin interfaceNESTWorkflowModifier
-
removeControlflowBlockNodes
public void removeControlflowBlockNodes(NESTControlflowNodeObject startControlflowNode)
Description copied from interface:NESTWorkflowModifierRemoves controlflow block nodes identified by the given start controlflow node. The corresponding end controlflow node will be removed too, including edges that link directly from start controlflow node to end controlfow node- Specified by:
removeControlflowBlockNodesin interfaceNESTWorkflowModifier
-
initializeDefaultClassNames
protected void initializeDefaultClassNames(NESTAbstractWorkflowObject graph)
- Overrides:
initializeDefaultClassNamesin classNESTAbstractWorkflowModifierImpl<NESTWorkflowObject>
-
-