ビジネス・オブジェクトの区切りデータへの変換

ビジネス・オブジェクトをストリングへ変換するために、Delimited データ・ハンドラーは、ビジネス・オブジェクトの属性を順番にループします。また、ビジネス・オブジェクト内での属性とその子の出現順に、区切りフォーマットを再帰的に生成します。ビジネス・オブジェクトの名前は、変換メソッドに引き数として渡されます。

Delimited データ・ハンドラーは、ビジネス・オブジェクトを次のように処理して、区切りデータへ変換します。

  1. データ・ハンドラーは、ビジネス・オブジェクト内のデータを含むストリングを作成します。
  2. データ・ハンドラーは、ストリングの最初のトークンとしてビジネス・オブジェクト名を追加し、ストリングの 2 番目のトークンとして動詞を追加します。
  3. データ・ハンドラーは、ビジネス・オブジェクト定義のアプリケーション固有情報を調べて、子メタオブジェクト (ビジネス・オブジェクトのアプリケーション固有情報の cw_mo_ タグ内に名前がリストされているもの) があるかどうかを判断します。データ・ハンドラーは、区切りデータにこれらの属性を含めませんcw_mo_ タグの詳細については、ビジネス・オブジェクトからの変換のインプリメントを参照してください。
  4. データ・ハンドラーは、OmitObjectEventId という名前のメタオブジェクト属性を調べる。これが true に設定されている場合は、区切りデータにビジネス・オブジェクトの ObjectEventId データを含めません。
  5. データ・ハンドラーは、残りのビジネス・オブジェクト属性を順にループし、それぞれの単純属性ごとに値をストリングへ追加し、各属性の後に構成済みの区切り文字を追加する。コンテナー属性の場合、データ・ハンドラーは次のことを行います。
  6. データ・ハンドラーが変換を完了したら、直列化データが呼び出し元へ戻されます。データ・ハンドラーは、呼び出し元が要求した形式 (String または InputStream) でデータを戻します。

データ・ハンドラーが生成する形式は、次のパターンに準拠します。

Bus_Obj_Name<delimiter>Verb<delimiter>Attr1<delimiter>Attr2<delimiter>
 Number_of_child_object_instances<delimiter>Child_Object_Name<delimiter>Verb
 <delimiter>Attr1<delimiter>Attr2<EndBO:Bus_Obj_Name>
 

属性値内の区切り文字に類似のストリングの前には、エスケープ・ストリングが付加されます。エスケープ・ストリングは、子メタオブジェクトの Escape 属性を使用して構成されます。

Copyright IBM Corp. 2004