Interface TreeDataBuilderAsync

All Known Implementing Classes:
com.ptc.windchill.enterprise.part.reports.mvc.builders.AbstractTreeReportConfigBuilder, BOMTableConfigBuilder, MultiLevelBOMReportTreeBuilder, MultiLevelBOMWithReplacementsReportTreeBuilder, SingleLevelBOMReportTreeBuilder

public interface TreeDataBuilderAsync
Builds the data for tree Component
Supported API: true

Extendable: false
  • Method Details

    • buildNodeData

      void buildNodeData(Object node, ComponentResultProcessor resultProcessor) throws Exception
      Fetches children for each node.

      The first call to this method from infrastructure will always pass first argument as TreeNode.RootNode. This first call ensures that all rootNodes are fetched for subsequent calls. The subsequent calls will always pass a treeNode for which child nodes are required to be fetched.If there is any utility class already available which has a separate method specifically written to return rootNodes it should be ensured that it is called only with the first call

      E.g. The code should handle this case similar to following code snippet

      List nodes; if (node == TreeNode.RootNode){ nodes = getTreeHandler(resultProcessor).getRootNodes(); resultProcessor.addElements(nodes); }else { getTreeHandler(resultProcessor).getNodes(node); nodes = resultProcessor.addElements(nodes); }

      Supported API: true

      Parameters:
      node -
      resultProcessor -
      Throws:
      Exception