ここでは,文書空間オブジェクトの作成について説明します。
DbjDocSpaceインターフェースでは,作成する文書空間オブジェクトの種別ごとにメソッドが定義されています。
作成できる文書空間オブジェクトの種別と,作成に使用するメソッドについて,次の表に示します。
表6-4 文書空間オブジェクトの種別と作成に使用するメソッド
文書空間オブジェクト | メソッド |
---|---|
バージョンなし文書 | createDocument |
バージョン付き文書 | createVrDocument |
バージョンなしフォルダ | createFolder |
バージョン付きフォルダ | createVrFolder |
独立データ | createIndependentData |
パブリックACL | createPublicACL |
なお,文書空間オブジェクトの作成が成功した場合,作成した文書空間オブジェクトを操作するためのDbjObjインターフェースがメソッドの戻り値として返却されます。DbjObjインターフェースの詳細については,「6.8 文書空間オブジェクトの操作」を参照してください。
また,文書空間オブジェクト作成時には,次の情報を指定できます。
それぞれの情報について説明します。
ここでは,バージョン付き文書を作成する例を示します。なお,バージョン付き文書にプロパティを指定する場合の指定方法については,「6.8.7(3) バージョン付きオブジェクトのプロパティの操作」を参照してください。
// バージョン付き文書を作成する例
// factory : DbjFactoryインターフェース
// docspc : DbjDocSpaceインターフェース
//初期値として設定するプロパティ値集合を作成する
DbjPropSet props = factory.createPropSet();
// バージョニングオブジェクトのプロパティ(Author)を設定する
props.setPropVal( "Author", "suzuki" );
// カレントバージョンのプロパティ(Ver)を設定する
// (バージョンオブジェクトのプロパティは@を付けて指定する)
props.setPropVal( "@Ver", "01-00" );
//文書のアップロード情報のリストを作成する
List uploadlist = new ArrayList();
uploadlist.add( factory.createUploadInfo(
file,
retrievalName,
null, // レンディションタイプは自動で設定する
null, // レンディションプロパティは設定しない
null ) ); // 全文検索インデクスは作成しない
// リンク設定情報のリストを作成する(直接型リンクで関連付ける)
List linklist = new ArrayList();
linklist.add( factory.createSetDCRLinkInfo(
docspc.createObjConnection(parentoiid) ,
// 上位フォルダのOIID
null ) ); // リンクプロパティは指定しない
// バージョン付き文書を作成する
DbjObj obj = docspc.createVrDocument(
"mdmClass_CfgH",
// バージョニングオブジェクトのトップオブジェクトクラス
"mdmClass_Document",
// バージョンオブジェクトのトップオブジェクトクラス
props, // プロパティ値集合
uploadlist, // 文書のアップロード情報のリスト
linklist ); // リンク設定情報のリスト
ここでは,文書の全文検索インデクスの作成方法について説明します。
全文検索インデクスは,バージョンなし文書またはバージョン付き文書の作成時に作成できます。また,文書のコンテンツ更新時にも作成できます。
全文検索インデクスの作成方法は,文書のアップロード情報(DbjUploadInfoインターフェース)で指定します。ただし,文書のトップオブジェクトクラスが全文検索機能付き文書クラス以外の場合,全文検索インデクスは作成されません。全文検索機能付き文書クラスの作成方法については,「4.5.2 全文検索機能付き文書クラスの作成」を参照してください。また,文書の作成時に全文検索インデクスを作成する場合は,全文検索インデクスの作成方法を指定した文書のアップロード情報は,リストの先頭に指定する必要があります。
全文検索インデクスの作成方法には,次の2通りの方法があります。
それぞれの方法の概要を次の図に示します。
図6-6 全文検索インデクスの作成方法
ここでは,バージョンなし文書の作成と同時に,コンテンツとして登録するファイルから全文検索インデクスを作成する例を示します。
// コンテンツとして登録するファイルから
// 全文検索インデクスを作成する例
// factory : DbjFactoryインターフェース
// docspc : DbjDocSpaceインターフェース
// 初期値として設定するプロパティ値集合を作成する
DbjPropSet props = factory.createPropSet();
// プロパティ(Author)を設定する
props.setPropVal("Author", "suzuki");
// 文書のアップロード情報のリストを作成する
List uploadlist = new ArrayList();
uploadlist.add( factory.createUploadInfo(
file_txt,
retrievalName,
null, // レンディションタイプは自動で設定する
null, // レンディションプロパティは設定しない
DbjDef.INDEXPATH_SAME ) );
// 全文検索インデクスを作成する
// バージョンなし文書を作成する
DbjObj obj = docspc.createDocument(
"mdmClass_Document", // 全文検索機能付き文書クラス
props, // プロパティ値集合
uploadlist, // 文書のアップロード情報のリスト
null ); // リンクは設定しない