Method Summary
All Methods Instance Methods Abstract Methods
boolean
Removes a sequence node from the nest graph and performs the necessary changes on the part-of
and control-flow edges.
boolean
Removes a sequence node from the nest graph and performs the necessary changes on the part-of
and control-flow edges.
Inserts a new constraint edge between the given graph nodes.
Adds a controlflow edge between the given graph nodes.
Inserts a new dataflow edge between the given graph nodes.
Creates a new data node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Creates a new data node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Inserts a new part-of edge between the given graph nodes.
Inserts a new subworkflow node in the nest graph.
Creates a new task node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Creates a new task node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Creates a new workflow node within the graph with the given semantic description.
Creates a new workflow node within the graph with the given semantic description.
Adds a given sub-graph into a target graph this modifier is responsible for.
void
Removes the controlflow-edge between the given graph nodes.
void
Removes the dataflow-edge between the given graph nodes.
boolean
Removes a semantic equal node of the given node from the graph.
void
Removes the given subgraph from the parent graph.
boolean
Removes the given node from the graph and adjusts the part-of hierarchy accordingly.
boolean
Removes a semantic equal node of the given node from the graph.
void
Removes unproductive task nodes, i.e., tasks that do not have any ingoing or outgoing data-flow
edges
void
Removes unused data objects i.e.
void
void
void
void
void
void
void
void
Method Details
getDefaultWorkflowNodeClassName
String getDefaultWorkflowNodeClassName ()
setDefaultWorkflowNodeClassName
void setDefaultWorkflowNodeClassName (String defaultWorkflowNodeClassName)
getDefaultSubWorkflowNodeClassName
String getDefaultSubWorkflowNodeClassName ()
setDefaultSubWorkflowNodeClassName
void setDefaultSubWorkflowNodeClassName (String defaultSubWorkflowNodeClassName)
getDefaultTaskNodeClassName
String getDefaultTaskNodeClassName ()
setDefaultTaskNodeClassName
void setDefaultTaskNodeClassName (String defaultTaskNodeClassName)
getDefaultDataNodeClassName
String getDefaultDataNodeClassName ()
setDefaultDataNodeClassName
void setDefaultDataNodeClassName (String defaultDataNodeClassName)
getDefaultControlflowEdgeClassName
String getDefaultControlflowEdgeClassName ()
setDefaultControlflowEdgeClassName
void setDefaultControlflowEdgeClassName (String defaultControlflowEdgeClassName)
getDefaultPartOfEdgeClassName
String getDefaultPartOfEdgeClassName ()
setDefaultPartOfEdgeClassName
void setDefaultPartOfEdgeClassName (String defaultPartOfEdgeClassName)
getDefaultDataflowEdgeClassName
String getDefaultDataflowEdgeClassName ()
setDefaultDataflowEdgeClassName
void setDefaultDataflowEdgeClassName (String defaultDataflowEdgeClassName)
getDefaultConstraintEdgeClassName
String getDefaultConstraintEdgeClassName ()
setDefaultConstraintEdgeClassName
void setDefaultConstraintEdgeClassName (String defaultConstraintEdgeClassName)
insertNewNode
Parameters:
nodeClassName
- String
parentWorkflowNode
- NESTNodeObject
semanticDescriptor
- DataObject
partOfEdgeSemanticDescriptor
-
Returns:
NESTNodeObject
insertNewWorkflowNode
Creates a new workflow node within the graph with the given semantic description.
Parameters:
semanticDescriptor
- The semantic description of the new node.
Returns:
insertNewWorkflowNode
Creates a new workflow node within the graph with the given semantic description.
Parameters:
workflowNodeClassName
- The name of the custom workflow node class
semanticDescriptor
- The semantic description of the new node.
Returns:
insertNewTaskNode
Creates a new task node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Parameters:
semanticDescriptor
- The semantic description of the new node.
Returns:
insertNewDataNode
Creates a new data node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Parameters:
semanticDescriptor
- The semantic description of the new node.
Returns:
insertNewTaskNode
Creates a new task node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Parameters:
taskNodeClassName
- The name of the custom task node class
semanticDescriptor
- The semantic description of the new node.
Returns:
insertNewDataNode
Creates a new data node within the graph with the given semantic description and links it to
the workflow node via part-of edge.
Parameters:
dataNodeClassName
- The name of the custom task node class
semanticDescriptor
- The semantic description of the new node.
Returns:
removeUnproductiveTasks
void removeUnproductiveTasks ()
Removes unproductive task nodes, i.e., tasks that do not have any ingoing or outgoing data-flow
edges
removeUnusedDataObjects
void removeUnusedDataObjects ()
Removes unused data objects i.e. they have no ingoing and outgoing edges.
dropBlockSequenceNode
Removes a sequence node from the nest graph and performs the necessary changes on the part-of
and control-flow edges.
Parameters:
node
-
Returns:
dropBlockSequenceNode
boolean dropBlockSequenceNode (String id)
Removes a sequence node from the nest graph and performs the necessary changes on the part-of
and control-flow edges.
Parameters:
id
-
Returns:
removeSubgraph
Removes the given subgraph from the parent graph.
Parameters:
subgraphToRemove
- the subgraph that should be removed
insertNewControlflowEdge
Adds a controlflow edge between the given graph nodes.
Parameters:
preNode
- The node on the left (previous) side of the edge.
postNode
- The node on the right (next) side of the edge.
semanticDescriptor
-
insertNewDataflowEdge
Inserts a new dataflow edge between the given graph nodes.
Parameters:
preNode
- The node on the left (previous) side of the edge.
postNode
- The node on the right (next) side of the edge.
semanticDescriptor
-
insertNewPartOfEdge
Inserts a new part-of edge between the given graph nodes.
Parameters:
preNode
- The node on the left (previous) side of the edge.
postNode
- The node on the right (next) side of the edge.
semanticDescriptor
-
insertNewConstraintEdge
Inserts a new constraint edge between the given graph nodes.
Parameters:
preNode
- The node on the left (previous) side of the edge.
postNode
- The node on the right (next) side of the edge.
semanticDescriptor
-
removeControlflowEdge
Removes the controlflow-edge between the given graph nodes.
Parameters:
preNode
- The node on the left (previous) side of the edge.
postNode
- The node on the right (next) side of the edge.
removeDataflowEdge
Removes the dataflow-edge between the given graph nodes.
Parameters:
preNode
- The node on the left (previous) side of the edge.
postNode
- The node on the right (next) side of the edge.
insertNewSubWorkflowNode
Inserts a new subworkflow node in the nest graph. The new node will be linked to the given
parent workflow node by a part-of edge. A parent node can be either a workflow or a subworkflow
node.
Parameters:
parentWorkflowNode
-
semanticDescription
-
Returns:
removeDataNode
Removes a semantic equal node of the given node from the graph.
Parameters:
dataNode
-
Returns:
removeTaskNode
Removes a semantic equal node of the given node from the graph.
Parameters:
taskNode
-
Returns:
removeSubWorkflowNode
Removes the given node from the graph and adjusts the part-of hierarchy accordingly.
Parameters:
subWorkflowNode
-
Returns:
insertSubgraph
Adds 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.
Parameters:
subgraphToInsert
- the sub-graph that should be added to the target graph
preNode
- 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