Class WorkflowFlowAnalysis
- java.lang.Object
-
- de.xima.fc.workflow.processor.logic.analysis.WorkflowFlowAnalysis
-
- All Implemented Interfaces:
IWorkflowFlowAnalysis
,Serializable
public final class WorkflowFlowAnalysis extends Object implements IWorkflowFlowAnalysis
Implementation ofIWorkflowFlowAnalysis
that analyzes the execution of a workflow task or process.- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static 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()
ITaskFlowAnalysis
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, getPotentialSuccessorsOf, isNodePotentiallyReachable
-
-
-
-
Method Detail
-
getTaskAnalysis
public ITaskFlowAnalysis getTaskAnalysis(UUID taskUuid)
- 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:
ITaskFlowAnalysis
-
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 WorkflowAnalysisException
Analyzes 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
public static WorkflowFlowAnalysis empty()
- Returns:
- A new, empty workflow execution analysis. Behaves as if no nodes had been analyzed.
-
-