getTreeNodes()

ソース・ノードの階層内の 1 つのレベルを表す、ツリー・ノードの配列を作成します。

構文

public TreeNode[] getTreeNodes(String parentNodePath, String searchPattern);
 

パラメーター

parentNodePath
トップレベル・ノードから、ビジネス・オブジェクト・ウィザードに戻される子の親ソース・ノードまでの完全修飾パスを指定します。パスの中の各ノードはコロン (:) で区切ります。

searchPattern
拡張可能な parentNodePath ノード内の下位ノードに対するユーザー指定の検索パターンです。

戻り値

TreeNode オブジェクト (指定されたオブジェクト階層内の下位ノードとなっているツリー・ノード・オブジェクト) の配列です。

例外

ODKException
Object Discovery Agent がツリー・ノードを取得するときに問題が発生した場合にスローされます。

注記

getTreeNodes() メソッドは、IGeneratesBoDefs インターフェース用のソース・ノード生成メソッドです。ビジネス・オブジェクト・ウィザードが getTreeNodes() を起動すると、ウィザードの「ソースの選択」(ステップ 3) ダイアログ・ボックスを初期化するツリー・ノードの配列が取得されます。

このダイアログ・ボックスから、ビジネス・オブジェクト定義生成用の特定のソース・ノードを選択します。データ・ソース内のソース・ノードの階層を表すツリー・ノードは、getTreeNodes() メソッド内で構築しておく必要があります。getTreeNode() メソッドは、このソース・ノードの階層を TreeNode オブジェクトの配列として、呼び出し元のビジネス・オブジェクト・ウィザードに戻します。

getTreeNodes() が戻すツリー・ノード配列によって、ソース・ノード階層の特定レベルにソース・ノードができます。どのレベルにおいても、一部のソース・ノードを拡張可能な (下位ノードを持つ) ソース・ノードにし、ほかのソース・ノードをリーフ (終端) ノードにすることができます。ソース・ノードの左側にプラス (+) 記号が表示されているときは、そのソース・ノードを展開することによって、階層をトラバースすることができます。ユーザーがノードを展開すると、ビジネス・オブジェクト・ウィザードによって getTreeNodes() が再度呼び出され、ユーザーが展開するノードの名前がこのメソッドの parentNodePath 引き数として指定されます。このノード名は、パス内の各ノードの名前で構成されます。ノード名はそれぞれコロン (:) で区切られます。

注:
ODA では、パスがオペレーティング・システムに依存しないようにするため、スラッシュや円記号ではなくコロンを使用します。

getTreeNodes() メソッドは、以下の基本タスクを実行して、ソース・ノードを生成します。

  1. データ・ソース内にある検索対象の親オブジェクトが識別されるよう、parentNodePath を解析します。
  2. 指定されたデータ・ソース親オブジェクトの子オブジェクトを検出します。

    ビジネス・オブジェクト・ウィザードが searchPattern 引き数を getTreeNodes() に渡すと、ユーザーによる検索基準の指定が完了します。結果として、getTreeNodes() によって戻されるノードは必然的に parentNodePath ノードの下位ノードのうち searchPattern の検索基準に適合した下位ノードだけに限られることになります。検索パターンをソース・ノードに適用可能にするためには、以下の条件が true でなければなりません。

  3. 子オブジェクト用のツリー・ノードを構築してツリー・ノード配列に格納します。

getTreeNodes() の実装方法について詳しくは、ソース・ノードの生成を参照してください。

参照

関連する参照情報については、TreeNode クラスを参照してください。

Copyright IBM Corp. 2004