|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.opends.server.core.WorkflowTopology
org.opends.server.core.WorkflowTopologyNode
public class WorkflowTopologyNode
This class implements a workflow node. A workflow node is used to build a tree of workflows (aka workflow topology). Each node may have a parent node and/or subordinate nodes. A node with no parent is a naming context. Each node in the workflow topology is linked to a WorkflowImpl which contains the real processing. The base DN of the workflow node is the base DN of the related WorkflowImpl. How the workflow topology is built? A workflow node is a subordinate of another workflow node when the base DN of the former workflow is an ancestor of the base DN of the latter workflow. A subtree search on a workflow node is performed on the node itself as well as on all the subordinate nodes.
Constructor Summary | |
---|---|
WorkflowTopologyNode(WorkflowImpl workflowImpl,
WorkflowElement[] preWorkflowElements,
WorkflowElement[] postWorkflowElements)
Creates a new node for a workflow topology. |
Method Summary | |
---|---|
void |
execute(Operation operation)
Executes an operation on a set of data being identified by the workflow node base DN. |
WorkflowTopologyNode |
getParent()
Gets the parent workflow. |
DN |
getParentBaseDN(DN dn)
Gets the base DN of the workflow that handles a given dn. |
java.util.ArrayList<WorkflowTopologyNode> |
getSubordinates()
Gets the list of workflow subordinates. |
WorkflowTopologyNode |
getWorkflowCandidate(DN requestDN)
Gets the highest workflow in the topology that can handle the requestDN. |
boolean |
insertSubordinate(WorkflowTopologyNode newWorkflow)
Tries to insert a new workflow in the subordinate list of one of the current workflow subordinate, or in the current workflow subordinate list. |
boolean |
isPrivate()
Indicates whether the root workflow element is encapsulating a private local backend or not. |
void |
remove()
Removes the current workflow from the parent subordinate list and attach the workflow subordinates to the parent workflow. |
void |
removeSubordinate(WorkflowTopologyNode subordinate)
Remove a workflow from the subordinate list. |
void |
setParent(WorkflowTopologyNode parent)
Sets the parent workflow. |
java.lang.StringBuilder |
toString(java.lang.String leftMargin)
Dumps info from the current workflow for debug purpose. |
Methods inherited from class org.opends.server.core.WorkflowTopology |
---|
elaborateScopeForSearchInSubordinates, getBaseDN, getWorkflowImpl |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public WorkflowTopologyNode(WorkflowImpl workflowImpl, WorkflowElement[] preWorkflowElements, WorkflowElement[] postWorkflowElements)
workflowImpl
- the real processing attached to the nodepreWorkflowElements
- the list of tasks to be executed before
the real processingpostWorkflowElements
- the list of tasks to be executed after
the real processingMethod Detail |
---|
public void execute(Operation operation) throws CanceledOperationException
operation
- the operation to execute
CanceledOperationException
- if this operation should
be cancelled.public void setParent(WorkflowTopologyNode parent)
parent
- the parent workflow of the current workflowpublic WorkflowTopologyNode getParent()
public boolean isPrivate()
true
if the root workflow element encapsulates
a private local backendpublic DN getParentBaseDN(DN dn)
dn
- the DN for which we are looking a parent DN
dn
,
null
if no parent DN was foundpublic void removeSubordinate(WorkflowTopologyNode subordinate)
subordinate
- the subordinate to remove from the subordinate listpublic boolean insertSubordinate(WorkflowTopologyNode newWorkflow)
newWorkflow
- the new workflow to insert
true
if the new workflow has been inserted
in any subordinate listpublic void remove()
public java.util.ArrayList<WorkflowTopologyNode> getSubordinates()
public WorkflowTopologyNode getWorkflowCandidate(DN requestDN)
requestDN
- The DN for which we search for a workflow
null
if none was foundpublic java.lang.StringBuilder toString(java.lang.String leftMargin)
leftMargin
- white spaces used to indent the traces
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |