Interface IDfOperationNodeTreeBuilder


public interface IDfOperationNodeTreeBuilder
Responsible for iterating through a list of populators for building and managing the node tree for the operation. IDfOperationNodeTreeBuilder acts as a bridge between business logic for node population using IDfPopulator and the operation.

When a client application invokes

operation.add(object);

internally, nodeTreeBuilder.add(object) is invoked. At that time, the list of configured populators for that operation is visited until a populator assumes responsibility for populating a node for that object.

A populator may result in invoking

nodeTreeBuilder.add(parentNode, edge, obj)

for all child objects. For instance, a directory populator would invoke add(parentNode, edge, obj) for all files it contains. Or a populator might also invoke the add(obj) method if it decides that a particular logical child object should be added as a root node.

Since:
7.0
  • Method Summary

    Modifier and Type
    Method
    Description
    add(IDfOperationNode parentNode, IDfNodeRelationship nodeRelationship, Object obj)
    Results in appending a node for the corresponding object as a child node of the given parentNode by iterating through list of populators for the operation.
    add(Object obj)
    This method results in adding a node for the corresponding object as root node.
  • Method Details

    • add

      This method results in adding a node for the corresponding object as root node. This method can be invoked from either an operation or a populator to add root nodes.
      Parameters:
      obj -
      Returns:
      IDfOperationNode root node in the node tree of the operation.
      Throws:
      DfException
    • add

      IDfOperationNode add(IDfOperationNode parentNode, IDfNodeRelationship nodeRelationship, Object obj) throws DfException
      Results in appending a node for the corresponding object as a child node of the given parentNode by iterating through list of populators for the operation. This method is called from populators only.
      Parameters:
      parentNode - A parent node. For example, when adding a directory for an import operation, this results in adding a node for the directory itself and child nodes for the files it contains.
      nodeRelationship - An operation edge represents the relationship between a parent node and the node being added as result of execution of this method.
      obj - Object for which a node needs to be created
      Returns:
      IDfOperationNode node corresponding to the given obj.
      Throws:
      DfException