Interface NESTWorkflowExtractor
- All Known Implementing Classes:
NESTWorkflowExtractorImpl
public interface NESTWorkflowExtractor
Interface of the nest workflow extractor, which provides methods to extract components of a nest
workflow graph.
- Author:
- unknown (
NESTWorkflowModifier
-
Method Summary
Modifier and TypeMethodDescriptionextractPartialGraph
(NESTSequenceNodeObject componentNodes, boolean removeUnusedControlflowBlocks) Returns a cloned partial nest workflow graph for a sequence node.extractPartialGraph
(Collection<NESTSequenceNodeObject> componentNodes, boolean removeUnusedControlflowBlocks) Returns a cloned partial nest workflow graph for a given set of sequence nodes.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 a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.Returns a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.extractSingleTaskBlocks
(Predicate<NESTTaskNodeObject> filter, int initialCntValue) Returns a set of nest workflow graphs where each graph contains a single task node from the given workflow graph.extractTaskSequences
(int minLength) Extracts each longest sequence of task nodes without controlflow nodes and with at least minLength tasksReturns a set of partial nest workflow graphs extracted from a block-oriented workflow graph.extractWorkflowBlocks
(int initialCntValue) Returns a set of partial nest workflow graphs extracted from a block-oriented workflow graph.
-
Method Details
-
extractOrderedDataNodes
LinkedList<NESTDataNodeObject> extractOrderedDataNodes()- Returns:
- data nodes ordered by occurrence.
-
extractOrderedTaskNodes
LinkedList<NESTTaskNodeObject> extractOrderedTaskNodes()- Returns:
- task nodes ordered by occurrence.
-
extractTaskSequences
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
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
-
extractSingleTaskBlocks
Set<NESTWorkflowObject> extractSingleTaskBlocks(Predicate<NESTTaskNodeObject> filter, int initialCntValue) 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 extractedinitialCntValue
- counter for id generation- Returns:
- set of nest workflow graphs
-
extractWorkflowBlocks
Set<NESTWorkflowObject> extractWorkflowBlocks()Returns a set of partial nest workflow graphs extracted from a block-oriented workflow graph. Returns the following elements as a single graph: each longest sequence of task nodes without controlflow nodes with at least two tasks and each controlflow block with contained sequences Returns null if the given nest workflow graph is not block-oriented.- Returns:
- set of nest workflow graphs
-
extractWorkflowBlocks
Returns a set of partial nest workflow graphs extracted from a block-oriented workflow graph. Returns the following elements as a single graph: each longest sequence of task nodes without controlflow nodes with at least two tasks and each controlflow block with contained sequences Returns null if the given nest workflow graph is not block-oriented.- Parameters:
initialCntValue
- counter for id generation- 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.
-