4.1.7 createObjList複数の文書空間オブジェクトアクセスインターフェースの取得

<この項の構成>
(1) 機能
(2) 形式
(3) 引数
(4) 戻り値
(5) 例外

(1) 機能

複数の文書空間オブジェクトにアクセスするインターフェース(DbjObjListインターフェース)を取得します。このインターフェースを実装するオブジェクトは,要素をDbjObjインターフェースとするリストオブジェクトです。ユーザアプリケーションプログラムは,このインターフェースを使用して複数の文書空間オブジェクトに対して一括してアクセスできます。

形式1では,要素数が0の空のリストオブジェクトである複数文書空間オブジェクトにアクセスするインターフェースを取得します。取得後,ユーザがList#addメソッドによって要素を追加して使用します。形式2では,要素がDbjObjインターフェースであるコレクションインターフェースを指定します。各要素(DbjObjインターフェース)は,リストオブジェクトの要素として設定されます。

形式3および形式4では,リストオブジェクトの各要素を検索結果集合の各行からリストオブジェクトの要素にマッピングして複数文書空間オブジェクトアクセスインターフェースを取得します。形式3では,OIIDの入っている列を列インデクスで指定します。形式4では,OIIDの入っている列を列名で指定します。さらに,検索結果集合で名前の付いている列(列名がnull以外のもの)は,各要素のProxyオブジェクトのプロパティとして設定されます。名前なし検索結果集合を指定すると,列名はすべてnullになります。よって,要素のProxyオブジェクトは,すべてのプロパティは保持しません。また,OIIDをプロパティとして指定した列は,対象外になります。形式3および形式4のtableNameにnullを指定すると,列名から表名(または相関名)部分が除かれた値がプロパティ名として設定されます。tableNameにnull以外を指定すると,指定した表名(または相関名)を含む列名のプロパティだけが対象になります。

(2) 形式

(a) 形式1

DbjObjList createObjList()

(b) 形式2

DbjObjList createObjList(
    Collection          srcObjs
)

(c) 形式3

DbjObjList createObjList(
    DbjResultSet        result,
    int                 columnIndexOfOiid,
    String              tableName
)

(d) 形式4

DbjObjList createObjList(
    DbjResultSet         result,
    String               columnNameOfOiid,
    String               tableName
)

(3) 引数

srcObjs(入力)
要素がDbjObjインターフェースのコレクションインターフェースを指定します。nullを指定すると例外がスローされます。
result(入力)
検索結果集合のDbjResultSetインターフェースを指定します。nullを指定すると例外がスローされます。
columnIndexOfOiid(入力)
検索結果集合のうち,OIIDを表す列インデクスを指定します。
columnNameOfOiid(入力)
検索結果集合のうち,OIIDを表す列名を指定します。nullを指定すると例外がスローされます。
tableName(入力)
表名(または相関名)を指定します。

(4) 戻り値

複数の文書空間オブジェクトアクセスインターフェース(DbjObjListインターフェース)

(5) 例外

ClassCastException
引数srcObjsの要素がDbjObjインターフェース以外の場合
IndexOutOfBoundsException
引数columnIndexOfOiidが範囲外の場合
NullPointerException
引数srcObjs,result,またはcolumnNameOfOiidがnullの場合