Interface NESTWorkflowExtractor
-
- All Known Implementing Classes:
NESTWorkflowExtractorImpl
public interface NESTWorkflowExtractorInterface of the nest workflow extractor, which provides methods to extract components of a nest workflow graph.- Author:
- unknown (
NESTWorkflowModifier
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description LinkedList<NESTDataNodeObject>extractOrderedDataNodes()LinkedList<NESTSequenceNodeObject>extractOrderedSequenceNodes()LinkedList<NESTTaskNodeObject>extractOrderedTaskNodes()NESTWorkflowObjectextractPartialGraph(NESTSequenceNodeObject componentNodes, boolean removeUnusedControlflowBlocks)Returns a cloned partial nest workflow graph for a sequence node.NESTWorkflowObjectextractPartialGraph(Collection<NESTSequenceNodeObject> componentNodes, boolean removeUnusedControlflowBlocks)Returns a cloned partial nest workflow graph for a given set of sequence nodes.Set<NESTWorkflowObject>extractPartialGraphComponents()Returns a set of partial nest workflow graph for those sequence nodes that are connected via the control-flow and a set of partial nest graphs containing unlinked data objects.Set<NESTWorkflowObject>extractSingleTaskBlocks()Returns a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.Set<NESTWorkflowObject>extractSingleTaskBlocks(Predicate<NESTTaskNodeObject> filter)Returns a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.Set<NESTWorkflowObject>extractTaskSequences(int minLength)Extracts each longest sequence of task nodes without controlflow nodes and with at least minLength tasksSet<NESTWorkflowObject>extractWorkflowBlocks()Returns a set of nest workflow graphs that are blocks of a block-oriented workflow graph.
-
-
-
Method Detail
-
extractOrderedDataNodes
LinkedList<NESTDataNodeObject> extractOrderedDataNodes()
- Returns:
- data nodes ordered by occurrence.
-
extractOrderedTaskNodes
LinkedList<NESTTaskNodeObject> extractOrderedTaskNodes()
- Returns:
- task nodes ordered by occurrence.
-
extractTaskSequences
Set<NESTWorkflowObject> extractTaskSequences(int minLength)
Extracts each longest sequence of task nodes without controlflow nodes and with at least minLength tasks- Parameters:
minLength- minimum number of tasks in a sequence- Returns:
- set of nest workflow graphs with task sequences
-
extractSingleTaskBlocks
Set<NESTWorkflowObject> extractSingleTaskBlocks()
Returns a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.- Returns:
- set of nest workflow graphs
-
extractSingleTaskBlocks
Set<NESTWorkflowObject> extractSingleTaskBlocks(Predicate<NESTTaskNodeObject> filter)
Returns a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.- Parameters:
filter- filter for the tasks to be extracted- Returns:
- set of nest workflow graphs
-
extractWorkflowBlocks
Set<NESTWorkflowObject> extractWorkflowBlocks()
Returns a set of nest workflow graphs that are blocks of a block-oriented workflow graph. Returns the following elements as a single graph: - each single task node, - each longest sequence of task nodes without controlflow nodes with at least two tasks, - each controlflow block with contained sequences Returns null if the given nest workflow graph is not block-oriented.- Returns:
- set of nest workflow graphs
-
extractPartialGraphComponents
Set<NESTWorkflowObject> extractPartialGraphComponents()
Returns a set of partial nest workflow graph for those sequence nodes that are connected via the control-flow and a set of partial nest graphs containing unlinked data objects.- Returns:
- set of partial nest workflow graphs
-
extractPartialGraph
NESTWorkflowObject extractPartialGraph(Collection<NESTSequenceNodeObject> componentNodes, boolean removeUnusedControlflowBlocks)
Returns a cloned partial nest workflow graph for a given set of sequence nodes.- Parameters:
componentNodes- the set of sequence nodes that are contained in the nest graphremoveUnusedControlflowBlocks- defined whether unused control-flow blocks are removed- Returns:
- cloned partial nest workflow graph
-
extractPartialGraph
NESTWorkflowObject extractPartialGraph(NESTSequenceNodeObject componentNodes, boolean removeUnusedControlflowBlocks)
Returns a cloned partial nest workflow graph for a sequence node.- Parameters:
componentNodes- the set of sequence nodes that are contained in the nest workflow graphremoveUnusedControlflowBlocks- defined whether unused control-flow blocks are removed- Returns:
- cloned partial nest workflow graph
-
extractOrderedSequenceNodes
LinkedList<NESTSequenceNodeObject> extractOrderedSequenceNodes()
- Returns:
- sequence nodes ordered by occurrence.
-
-