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
-
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, getTaskAnalysis, isNodePotentiallyReachable, isNodePotentiallyReachable
-
-
-
-
Method Detail
-
getEndPoints
public IFlowGraphEndPoints getEndPoints(INodeKeyProviding node)
Description copied from interface:IWorkflowFlowAnalysis
Convenience method for obtaining thetask analysis
, then using it to obtain theend points
.- Specified by:
getEndPoints
in interfaceIWorkflowFlowAnalysis
- Parameters:
node
- Node for which to find the end points.- Returns:
- The end points of the given node. Never null, but might be empty if a non-existing node was given.
-
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, ITreeWithDataAccessor<TElement,UUID,Object> 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.
-
analyzeRootNodes
@Deprecated public static <TElement extends IWorkflowNodeTypeProviding & IActiveFlagProviding> WorkflowFlowAnalysis analyzeRootNodes(Iterable<IElementWithTask<TElement>> rootNodes, ITreeWithDataAccessor<TElement,UUID,Object> treeAccessor, Mandant client) throws WorkflowAnalysisException
Deprecated.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.
-
-