Class WorkflowElementIndex
- java.lang.Object
-
- de.xima.fc.workflow.processor.model.WorkflowElementIndex
-
public final class WorkflowElementIndex extends Object
Given aWorkflowTask
orWorkflowProcess
, contains various maps ofWorkflowNode
s for quickly accessing the nodes by a certain index.- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
-
-
Method Summary
-
-
-
Method Detail
-
getAllNodes
public Collection<IWorkflowElementWithDeserializedModel<?,WorkflowNode>> getAllNodes()
- Returns:
- A list of all known nodes in this element index.
-
getAllTriggers
public Collection<IWorkflowElementWithDeserializedModel<?,WorkflowTrigger>> getAllTriggers()
- Returns:
- A list of all known triggers in this element index.
-
getNodeByUuid
public IWorkflowElementWithDeserializedModel<?,WorkflowNode> getNodeByUuid(ElementKey key)
- Parameters:
key
- Element key of a workflow node to find.- Returns:
- The workflow node with the given key, or
null
when no such node exists.
-
getNodeByUuid
public IWorkflowElementWithDeserializedModel<?,WorkflowNode> getNodeByUuid(NodeKey key)
- Parameters:
key
- Element key of a workflow node to find.- Returns:
- The workflow node with the given key, or
null
when no such node exists.
-
getNodesByKind
public Map<String,List<IWorkflowElementWithDeserializedModel<?,WorkflowNode>>> getNodesByKind()
- Returns:
- All nodes, grouped by their
AWorkflowElement.getType()
.
-
getNodesByKindAndTask
public Map<String,Map<UUID,List<IWorkflowElementWithDeserializedModel<?,WorkflowNode>>>> getNodesByKindAndTask()
- Returns:
- An index of all nodes, indexed first by their type and then by the task they belong to.
-
getNodesByTask
public Map<UUID,List<IWorkflowElementWithDeserializedModel<?,WorkflowNode>>> getNodesByTask()
- Returns:
- All nodes, grouped by the UUID of the task they belong to.
-
getNodesByUuid
public Map<NodeKey,IWorkflowElementWithDeserializedModel<?,WorkflowNode>> getNodesByUuid()
- Returns:
- All nodes , indexed by their
ElementKey
.
-
getTasks
public List<WorkflowTask> getTasks()
- Returns:
- All tasks contained in this index.
-
getTriggerByUuid
public IWorkflowElementWithDeserializedModel<?,WorkflowTrigger> getTriggerByUuid(ElementKey key)
- Parameters:
key
- Element key of a workflow trigger to find.- Returns:
- The workflow trigger with the given key, or
null
when no such trigger exists.
-
getTriggerByUuid
public IWorkflowElementWithDeserializedModel<?,WorkflowTrigger> getTriggerByUuid(TriggerKey key)
- Parameters:
key
- Element key of a workflow trigger to find.- Returns:
- The workflow trigger with the given key, or
null
when no such trigger exists.
-
getTriggersByKind
public Map<String,List<IWorkflowElementWithDeserializedModel<?,WorkflowTrigger>>> getTriggersByKind()
- Returns:
- All triggers, grouped by their
AWorkflowElement.getType()
.
-
getTriggersByKindAndTask
public Map<String,Map<UUID,List<IWorkflowElementWithDeserializedModel<?,WorkflowTrigger>>>> getTriggersByKindAndTask()
- Returns:
- An index of all triggers, indexed first by their type and then by the trigger they belong to.
-
getTriggersByUuid
public Map<TriggerKey,IWorkflowElementWithDeserializedModel<?,WorkflowTrigger>> getTriggersByUuid()
- Returns:
- All triggers, indexed by their
ElementKey
.
-
of
public static WorkflowElementIndex of(WorkflowProcess process, Mandant client)
Creates a new index with all workflow element from the given process.- Parameters:
process
- Workflow process to index.client
- Current client that is used to retrieve plugin trigger and node handlers.- Returns:
- A new index with all workflow element from the given process.
-
of
public static WorkflowElementIndex of(WorkflowTask task, Mandant client)
Creates a new index with all workflow element from the given task.- Parameters:
task
- Workflow task to index.client
- Current client that is used to retrieve plugin trigger and node handlers.- Returns:
- A new index with all workflow element from the given task.
-
-