Class WorkflowFlowAnalysis
java.lang.Object
de.xima.fc.workflow.processor.logic.analysis.WorkflowFlowAnalysis
- All Implemented Interfaces:
IWorkflowFlowAnalysis
,Serializable
Implementation of
IWorkflowFlowAnalysis
that analyzes the execution of a workflow task or process.- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionstatic WorkflowFlowAnalysis
analyzeProcess
(WorkflowProcess process, Mandant client) Analyzes the execution of all tasks of the given workflow process.static <TElement extends IWorkflowNodeTypeProviding & IActiveFlagProviding>
WorkflowFlowAnalysisanalyzeRootNodes
(Iterable<IElementWithTask<TElement>> rootNodes, ITreeAccessor<TElement, UUID> treeAccessor, Mandant client) Analyzes the execution of a single task.static WorkflowFlowAnalysis
analyzeTask
(WorkflowTask task, Mandant client) Analyzes the execution of a single task.static WorkflowFlowAnalysis
empty()
getTaskAnalysis
(UUID taskUuid) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface de.xima.fc.interfaces.workflow.analysis.IWorkflowFlowAnalysis
getPotentialPredecessorsOf, getPotentialPredecessorsOf, getPotentialSuccessorsOf, getPotentialSuccessorsOf, isNodePotentiallyReachable, isNodePotentiallyReachable
-
Method Details
-
getTaskAnalysis
- Specified by:
getTaskAnalysis
in interfaceIWorkflowFlowAnalysis
- Parameters:
taskUuid
- UUID of a task that was analyzed.- Returns:
- The control flow analysis for the given task.
- See Also:
-
analyzeProcess
public static WorkflowFlowAnalysis analyzeProcess(WorkflowProcess process, Mandant client) throws WorkflowAnalysisException Analyzes the execution of all tasks of the given workflow process.- Parameters:
process
- Process with tasks to analyze.client
- The client scope where the analysis is performed.- Returns:
- The analyzed result of all given tasks.
- Throws:
WorkflowAnalysisException
- When any exception occurred during the analysis, usually caused by misbehavingINodeHandler
s.
-
analyzeRootNodes
public static <TElement extends IWorkflowNodeTypeProviding & IActiveFlagProviding> WorkflowFlowAnalysis analyzeRootNodes(Iterable<IElementWithTask<TElement>> rootNodes, ITreeAccessor<TElement, UUID> treeAccessor, Mandant client) throws WorkflowAnalysisExceptionAnalyzes the execution of a single task.- Type Parameters:
TElement
- Type of the workflow nodes.- Parameters:
treeAccessor
- Accessor for retrieving the children and custom properties of the node.rootNodes
- Root nodes to analyze.client
- The client scope where the analysis is performed.- Returns:
- The result of analyzing the given task.
- Throws:
WorkflowAnalysisException
- When any exception occurred during the analysis, usually caused by misbehavingINodeHandler
s.
-
analyzeTask
public static WorkflowFlowAnalysis analyzeTask(WorkflowTask task, Mandant client) throws WorkflowAnalysisException Analyzes the execution of a single task.- Parameters:
task
- A tasks to analyze.client
- The client scope where the analysis is performed.- Returns:
- The result of analyzing the given task.
- Throws:
WorkflowAnalysisException
- When any exception occurred during the analysis, usually caused by misbehavingINodeHandler
s.
-
empty
- Returns:
- A new, empty workflow execution analysis. Behaves as if no nodes had been analyzed.
-