uCosminexus DocumentBroker Text Search Index Loader Version 3
![[目次]](figure/content.gif)
![[用語]](figure/gloss.gif)
![[索引]](figure/index.gif)
![[前へ]](figure/front.gif)
フィルタプラグイン関数(dbrIdxTextFilter())
機能
形式
int dbrIdxTextFilter (
Idx_DocumentInfo *DocumentInfo,
unsigned long DataMode,
char *TargetData,
unsigned long TargetLength,
unsigned long MaxTextLength,
char *TextData,
unsigned long *TextLength,
unsigned long *OutFileDeleteFlag);
引数
- DocumentInfo《入力》
- Idx_DocumentInfo構造体を指定します。Idx_DocumentInfo構造体には,処理対象文書オブジェクトのシステムプロパティ情報を指定します。
- DataMode《入力》
- プラグイン環境設定ファイルのDataModeエントリにMEMORYを指定した場合は0を,FILEを指定した場合は1を指定します。
- TargetData《入力》
- DataModeに0を指定した場合
- テキスト抽出する対象データのアドレスを指定します。対象データは,テキストインデクサーがデータベースから取り出し,TargetDataの先頭アドレスから対象データ長(TargetLength)分だけコピーします。
- DataModeに1を指定した場合
- テキスト抽出する対象ファイルのフルパスを,最後が\0で終わる文字列で指定します。テキストインデクサーは対象ファイルをデータベースから取り出して環境変数TMPDIR下に作成し,この関数の呼び出し後に対象ファイルを削除します。
- TargetLength《入力》
- テキスト抽出する対象データのデータ長を指定します。
- MaxTextLength《入力》
- テキスト抽出する上限値を指定します。この値は,環境設定ファイルのMaxOfLengthエントリ,またはEDMTextIndexコマンドの-lオプションのどちらかで指定します。どちらにも値を指定した場合は,-lオプションに指定した値が優先されます。
- TextData《出力》
- DataModeに0を指定した場合
- テキストインデクサーがMaxTextLengthで指定した値(単位:バイト)だけ確保した領域に,テキスト抽出後のデータを格納します。
- DataModeに1を指定した場合
- テキストインデクサーが確保した領域(256バイト)に,テキスト抽出後のファイルのフルパスを最後が\0で終わる文字列で指定してください。この場合,EDMTextIndexコマンドを実行したユーザに,テキスト抽出後のファイルの読み取り権限が必要です。
- TextLength《出力》
- DataModeに0を指定した場合
- テキスト抽出後のデータのデータ長を指定してください。
- DataModeに1を指定した場合
- この指定は無視されます。
- OutFileDeleteFlag《出力》
- DataModeに0を指定した場合
- この指定は無視されます。
- DataModeに1を指定した場合
- TextDataに指定したテキスト抽出後のファイルを削除する場合は1を指定してください。削除しない場合は0を指定してください。
戻り値
| 戻り値 |
内容 |
テキストインデクサーの対処 |
| 0 |
正常終了 |
処理を継続します。 |
| 正の値 |
テキスト抽出に失敗しました。この値はユーザが定義します。 |
ワーニングメッセージKMBV12252-Wを出力し,文書のインデクス登録処理を継続します。
書誌情報の登録を指定している場合は,書誌情報の登録処理を実行します。書誌情報を登録しないように指定している場合は,エラーとなった文書はテキスト抽出に失敗した文書として扱います。 |
| 負の値 |
テキスト抽出に失敗しました。この値はユーザが定義します。 |
エラーメッセージKMBV12308-Eを出力し,文書のインデクス登録処理を中断し,コマンドを終了します。エラーとなった文書は,テキスト抽出に失敗した文書として扱います。 |
注意事項
- 戻り値に正の値を設定しても,EDMTextIndexコマンドで-rオプションを指定した場合は,エラーメッセージ(KMBV12308-E)を出力して文書のインデクス登録処理を中断し,コマンドを終了します。
- この関数内ではthrowしないでください。throwした場合は,エラーメッセージ(KMBV12308-E)を出力して文書のインデクス登録処理を中断し,コマンドを終了します。
構造体の定義
struct IDX_DOCUMENTINFO {
char *pidxDVSubOIID; //処理対象文書クラスのOIID
char *pidxRenditionOIID; //処理対象文書(レンディション)のOIID
char *pidxRenditionType; //処理対象文書(レンディション)のRenditionType
char *pidxRetrievalName; //処理対象文書(コンテント)のRetrievalName
} Idx_DocumentInfo;
- pidxDVSubOIID
- 処理対象文書クラスのOIIDを指定します。
- pidxRenditionOIID
- 処理対象文書(レンディション)のOIIDを指定します。
- pidxRenditionType
- 処理対象文書(レンディション)のRenditionTypeを指定します。このとき,処理対象文書のRenditionTypeプロパティから「MIME:」を除いた形式で指定します。
- pidxRetrievalName
- 処理対象文書(コンテント)のdmaPrp_RetrievalNameを指定します。
All Rights Reserved. Copyright (C) 2007, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2007, 2009, Hitachi Systems & Services, Ltd.