Class NESTSequentialWorkflowObjectImpl
- java.lang.Object
-
- de.uni_trier.wi2.procake.data.object.impl.DataObjectImpl
-
- de.uni_trier.wi2.procake.data.object.nest.impl.NESTGraphObjectImpl
-
- de.uni_trier.wi2.procake.data.object.nest.impl.NESTAbstractWorkflowObjectImpl
-
- de.uni_trier.wi2.procake.data.object.nest.impl.NESTSequentialWorkflowObjectImpl
-
- All Implemented Interfaces:
DataObject,NESTAbstractWorkflowObject,NESTGraphObject,NESTSequentialWorkflowObject,PropertyHandler,Iterable<NESTSequenceNodeObject>
public class NESTSequentialWorkflowObjectImpl extends NESTAbstractWorkflowObjectImpl implements NESTSequentialWorkflowObject
-
-
Field Summary
-
Fields inherited from class de.uni_trier.wi2.procake.data.object.nest.impl.NESTGraphObjectImpl
eventListener, graphNodes, idManager
-
Fields inherited from class de.uni_trier.wi2.procake.data.object.impl.DataObjectImpl
objectId
-
-
Constructor Summary
Constructors Constructor Description NESTSequentialWorkflowObjectImpl(NESTSequentialWorkflowClass cakeclazz)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddGraphNode(NESTNodeObject newGraphNode)Adds the given graph-node to the internal list of registered graphnodes.DataObjectcopy()Makes a deep copy of the data objectprotected NESTNodeObjectcopyNodeDeep(NESTNodeObject node, Map<NESTNodeObject,NESTNodeObject> copiedNodes, Map<NESTEdgeObject,NESTEdgeObject> copiedEdges, NESTAbstractWorkflowObject nestWorkflow)Set<NESTSequenceNodeObject>getEndNodes()Returns the list of endNodes (nodes with no outgoing NESTControlflowEdge) for this graph.Set<NESTTaskNodeObject>getEndTaskNodes()Returns all the task nodes that are not connected via controlflow-edge to successor tasks (end task nodes)NESTTaskNodeObject[]getNESTTaskNodesInOrder()Finds the ordered task nodes of this resource and returns them as a 1D array.Set<NESTSequenceNodeObject>getSequenceNodes()Returns the complete set of sequence nodes registered in the graph.Set<NESTSequenceNodeObject>getStartNodes()Returns the list of startNodes (nodes with no incoming NESTControlflowEdge) for this graph.Set<NESTTaskNodeObject>getStartTaskNodes()Returns all the task nodes that are not connected via controlflow-edge to predeccessor tasks (start task nodes)StringgetTasksAsString()Returns the tasks in the string representation.voidprintTasks()Prints the tasks.voidtransformListObjectToNESTSequentialWorkflow(ListObject listObject)Creates a new de facto resource from the given graphObject only if it indeed is a de facto workflow.voidtransformNESTGraphToNESTSequentialWorkflow(NESTGraphObject nestGraph)Creates a new de facto resource from the given graphObject only if it indeed is a de facto workflow.-
Methods inherited from class de.uni_trier.wi2.procake.data.object.nest.impl.NESTAbstractWorkflowObjectImpl
copyEdgeDeep, getControlflowEdges, getDataflowEdges, getDataNodes, getDataNodes, getEndTaskNodes, getEqualSyntacticGraphNode, getInputDataNodes, getInputDataNodes, getModifier, getOutputDataNodes, getOutputDataNodes, getStartTaskNodes, getSubWorkflowNodes, getTaskNodes, getTaskNodes, getWorkflowNode, hasSubWorkflowNodes, iterator
-
Methods inherited from class de.uni_trier.wi2.procake.data.object.nest.impl.NESTGraphObjectImpl
assertSameValueAsIn, checkAllowedGraphClasses, containsValueFrom, containsValueFromWithExceptions, getEqualIdGraphNode, getGraphEdge, getGraphEdges, getGraphNode, getGraphNodes, getGraphNodes, getIDManager, getNumberOfEdges, getNumberOfNodes, getSemanticallyEqualNode, getSemanticallyEqualNode, getVisualizer, getVisualizer, hasSameValueAsIn, publishAddNode, publishRemoveNode, removeGraphNode, toString, updateDependencies, updateGraphNodeId
-
Methods inherited from class de.uni_trier.wi2.procake.data.object.impl.DataObjectImpl
addProperty, addProperty, deepCopy, getAllProperties, getAllPropertyNodes, getDataClass, getId, getModel, getProperty, getPropertyNames, getPropertyNode, getPropertyRootNode, hasClassName, hasProperties, hasSystemClassName, isAggregate, isAtomic, isBoolean, isByteArray, isChronologic, isCollection, isDataflowWrapper, isDataReference, isDate, isDouble, isInteger, isInterval, isKindOf, isList, isMemberOf, isNESTConstraintEdge, isNESTControlflowEdge, isNESTControlflowNode, isNESTDataflowEdge, isNESTDataNode, isNESTEdge, isNESTGraph, isNESTNode, isNESTPartOfEdge, isNESTSequenceNode, isNESTSequentialWorkflow, isNESTSubWorkflowNode, isNESTTaskNode, isNESTWorkflow, isNESTWorkflowNode, isNode, isNumeric, isSequence, isSet, isString, isSubWorkflow, isTask, isTime, isTimestamp, isUnion, isURI, isVoid, isWorkflow, removeId, removeProperty, setDataClass, setId, toDetailedString, toXML
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface de.uni_trier.wi2.procake.data.object.DataObject
assertSameValueAsIn, getDataClass, getId, getModel, hasClassName, hasSameValueAsIn, hasSystemClassName, isAggregate, isAtomic, isBoolean, isByteArray, isChronologic, isCollection, isDataflowWrapper, isDataReference, isDate, isDouble, isInteger, isInterval, isKindOf, isList, isMemberOf, isNESTConstraintEdge, isNESTControlflowEdge, isNESTControlflowNode, isNESTDataflowEdge, isNESTDataNode, isNESTEdge, isNESTGraph, isNESTNode, isNESTPartOfEdge, isNESTSequenceNode, isNESTSequentialWorkflow, isNESTSubWorkflowNode, isNESTTaskNode, isNESTWorkflow, isNESTWorkflowNode, isNode, isNumeric, isSequence, isSet, isString, isSubWorkflow, isTask, isTime, isTimestamp, isUnion, isURI, isVoid, isWorkflow, removeId, setDataClass, setId, toDetailedString, toXML
-
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Methods inherited from interface de.uni_trier.wi2.procake.data.object.nest.NESTAbstractWorkflowObject
getControlflowEdges, getDataflowEdges, getDataNodes, getDataNodes, getEndTaskNodes, getEqualSyntacticGraphNode, getInputDataNodes, getInputDataNodes, getModifier, getOutputDataNodes, getOutputDataNodes, getStartTaskNodes, getSubWorkflowNodes, getTaskNodes, getTaskNodes, getWorkflowNode, hasSubWorkflowNodes
-
Methods inherited from interface de.uni_trier.wi2.procake.data.object.nest.NESTGraphObject
containsValueFrom, containsValueFromWithExceptions, getEqualIdGraphNode, getGraphEdge, getGraphEdges, getGraphNode, getGraphNodes, getGraphNodes, getIDManager, getNumberOfEdges, getNumberOfNodes, getSemanticallyEqualNode, getSemanticallyEqualNode, getVisualizer, getVisualizer, removeGraphNode, updateGraphNodeId
-
Methods inherited from interface de.uni_trier.wi2.procake.data.PropertyHandler
addProperty, addProperty, getAllProperties, getAllPropertyNodes, getProperty, getPropertyNames, getPropertyNode, getPropertyRootNode, hasProperties, removeProperty
-
-
-
-
Constructor Detail
-
NESTSequentialWorkflowObjectImpl
public NESTSequentialWorkflowObjectImpl(NESTSequentialWorkflowClass cakeclazz)
-
-
Method Detail
-
addGraphNode
public void addGraphNode(NESTNodeObject newGraphNode)
Description copied from interface:NESTGraphObjectAdds the given graph-node to the internal list of registered graphnodes. Nodes are being bound automatically if they are connected to already bound edges. → Create the graph based on the startnode, so that all nodes/edges get automatically bound.- Specified by:
addGraphNodein interfaceNESTGraphObject- Overrides:
addGraphNodein classNESTGraphObjectImpl- Parameters:
newGraphNode- The graphnode, which should be registered.
-
transformNESTGraphToNESTSequentialWorkflow
public void transformNESTGraphToNESTSequentialWorkflow(NESTGraphObject nestGraph)
Description copied from interface:NESTSequentialWorkflowObjectCreates a new de facto resource from the given graphObject only if it indeed is a de facto workflow.- Specified by:
transformNESTGraphToNESTSequentialWorkflowin interfaceNESTSequentialWorkflowObject- Parameters:
nestGraph- The graph object potentially representing a de facto workflow.
-
transformListObjectToNESTSequentialWorkflow
public void transformListObjectToNESTSequentialWorkflow(ListObject listObject)
Description copied from interface:NESTSequentialWorkflowObjectCreates a new de facto resource from the given graphObject only if it indeed is a de facto workflow.- Specified by:
transformListObjectToNESTSequentialWorkflowin interfaceNESTSequentialWorkflowObject- Parameters:
listObject- The list object potentially representing a de facto workflow.
-
getNESTTaskNodesInOrder
public NESTTaskNodeObject[] getNESTTaskNodesInOrder()
Description copied from interface:NESTSequentialWorkflowObjectFinds the ordered task nodes of this resource and returns them as a 1D array.- Specified by:
getNESTTaskNodesInOrderin interfaceNESTSequentialWorkflowObject- Returns:
- Array containing all the task nodes in order.
-
printTasks
public void printTasks()
Description copied from interface:NESTSequentialWorkflowObjectPrints the tasks.- Specified by:
printTasksin interfaceNESTSequentialWorkflowObject
-
getTasksAsString
public String getTasksAsString()
Description copied from interface:NESTSequentialWorkflowObjectReturns the tasks in the string representation.- Specified by:
getTasksAsStringin interfaceNESTSequentialWorkflowObject- Returns:
- The task in the string representation.
-
getStartNodes
public Set<NESTSequenceNodeObject> getStartNodes()
Description copied from interface:NESTAbstractWorkflowObjectReturns the list of startNodes (nodes with no incoming NESTControlflowEdge) for this graph.- Specified by:
getStartNodesin interfaceNESTAbstractWorkflowObject- Overrides:
getStartNodesin classNESTAbstractWorkflowObjectImpl- Returns:
-
getEndNodes
public Set<NESTSequenceNodeObject> getEndNodes()
Description copied from interface:NESTAbstractWorkflowObjectReturns the list of endNodes (nodes with no outgoing NESTControlflowEdge) for this graph.- Specified by:
getEndNodesin interfaceNESTAbstractWorkflowObject- Overrides:
getEndNodesin classNESTAbstractWorkflowObjectImpl- Returns:
-
getStartTaskNodes
public Set<NESTTaskNodeObject> getStartTaskNodes()
Description copied from interface:NESTAbstractWorkflowObjectReturns all the task nodes that are not connected via controlflow-edge to predeccessor tasks (start task nodes)- Specified by:
getStartTaskNodesin interfaceNESTAbstractWorkflowObject- Overrides:
getStartTaskNodesin classNESTAbstractWorkflowObjectImpl- Returns:
- list of task nodes
-
getEndTaskNodes
public Set<NESTTaskNodeObject> getEndTaskNodes()
Description copied from interface:NESTAbstractWorkflowObjectReturns all the task nodes that are not connected via controlflow-edge to successor tasks (end task nodes)- Specified by:
getEndTaskNodesin interfaceNESTAbstractWorkflowObject- Overrides:
getEndTaskNodesin classNESTAbstractWorkflowObjectImpl- Returns:
- list of task nodes
-
getSequenceNodes
public Set<NESTSequenceNodeObject> getSequenceNodes()
Description copied from interface:NESTAbstractWorkflowObjectReturns the complete set of sequence nodes registered in the graph.- Specified by:
getSequenceNodesin interfaceNESTAbstractWorkflowObject- Overrides:
getSequenceNodesin classNESTAbstractWorkflowObjectImpl- Returns:
- Set of sequence nodes in the graph.
-
copy
public DataObject copy()
Description copied from interface:DataObjectMakes a deep copy of the data object- Specified by:
copyin interfaceDataObject- Overrides:
copyin classNESTGraphObjectImpl- Returns:
- deep copy of the data object
-
copyNodeDeep
protected NESTNodeObject copyNodeDeep(NESTNodeObject node, Map<NESTNodeObject,NESTNodeObject> copiedNodes, Map<NESTEdgeObject,NESTEdgeObject> copiedEdges, NESTAbstractWorkflowObject nestWorkflow)
- Specified by:
copyNodeDeepin classNESTAbstractWorkflowObjectImpl
-
-