配布ターゲットのクラス
ESITarget
配布ターゲットは一意の宛先を表します。各宛先は Windchill データベース内で永続化され、ESITarget オブジェクトは永続化された宛先を表します。クラス ESITargetwt.fc.Item のサブクラスであり、Item クラスの Windchill 永続化機能とアクセス制御機能を継承します (以下の「ESITarget オブジェクトと Windchill 組織」の図を参照)。さらに、ソフトタイプ拡張の作成を可能にしてオブジェクトイベント通知をサポートするため、インタフェース wt.type.Typedwt.notify.Notifiable をそれぞれ実装します。
ESITarget オブジェクトには 7 つのモデル化属性があります。name、number、および description 属性は、Windchill ESI 配布ターゲット割当ユーザーインタフェースのために提供されています。name 属性には最大 450 文字の値を含めることができるのに対し、number 属性には最大 32 文字の値を含めることができます。description 属性の長さは最大 2048 文字です。name 属性と number 属性は必須です。description 属性は Null でも構いません。さらに、各 ESITarget オブジェクトの number 属性には、データベース内で一意の値が指定されている必要があります。defaultForContext 属性は、その ESITarget オブジェクトが、作成先のコンテナのデフォルトオブジェクトであるかどうかを示します。true に設定した場合、その ESITarget オブジェクトは、関連付けられているコンテナのデフォルトのオブジェクトになります。これはデフォルトでは false に設定されています。status 属性は、その ESITarget オブジェクトがアクティブであるかどうかを示します。status の値は、wt.fc.EnumeratedType の拡張であるクラス ESITargetStatusType によって定義されます。列挙タイプに格納されている値 active は、その ESITarget オブジェクトがアクティブであることを示します。値 inactive は、非アクティブなターゲットであることを示し、そのオブジェクトが ESI トランザクションに参加することはできません。デフォルトでは、status 属性は active に設定されています。taskURI 属性には、ESI 応答メッセージを必要な宛先、つまり TIBCO EMS サーバーのデータ応答キューに送信するために使用される Info*Engine タスクへのパスが格納されます。この属性はデフォルトで com/ptc/windchill/esi/export/ExportToJMSQueue.xml に設定されています。responseMetaInfoPath 属性には、配布ターゲットに生成される応答メッセージのフォーマットを決定する ESI 応答メタ情報ファイルへのパスが格納されます。この属性はデフォルトで $CODEBASE$/com/ptc/windchill/esi/ESIResponseMetaInfo.xml に設定されています。カスタマイズされたバージョンの応答メッセージを取得するためにこのファイルを修正する方法については、ESI 応答メタ情報ファイルの修正のセクションを参照してください。
Oracle Applications に固有の属性を ESITarget オブジェクトに保存するために、Windchill ESI にはデフォルトで、タイプ ESIORATarget によって識別されるソフトタイプ拡張が用意されています。このタイプでは、Oracle Applications 固有の属性 DSN および Organization を保存できます。ESI 応答で送信される <Destination> エレメントのコンテンツには DSN 属性の値が格納され、<TargetID> エレメントのコンテンツは number 属性と Organization 属性の値で構成されます。クラス ESITargetUtilitygetDestinationId() API と getTargetId() API をそれぞれ使用して、これらのエレメントのコンテンツがフェッチされます。これについてはESITargetUtilityのセクションで説明しています。
* 
Windchill ESI には、前述のソフト拡張に加えて、SAP、ファイル、電子メールアドレスなど、その他のタイプの配布ターゲットに対応するものもいくつか用意されています。また、ユーザーは「タイプおよび属性の管理」 UI を使用して、ESITarget のカスタマイズされた独自のソフト拡張も作成できます。
Windchill ESI には ESITarget オブジェクトを定義するためのユーザーインタフェースが用意されており、これには「サイト」 > 「ユーティリティ」または「組織」 > 「ユーティリティ」ページに表示される「配布を管理」 UI オプションからアクセスできます。
* 
ESITarget の属性は、ユーザーインタフェースには (内部名ではなく) 表示名で表示されます。たとえば、responseMetaInfoPath 属性は「ESI 応答メタ情報のファイルパス」という名前で表示されます。ほとんどの場合、どの属性を指しているのかは表示名から簡単に判断できます。
Windchill ESI Services では以下を行うメソッドも提供されています。
ESITarget オブジェクトを定義する
ESITarget オブジェクトを削除する
ESITarget オブジェクトを WTOrganization オブジェクトに関連付ける
ESITarget オブジェクトと WTOrganization オブジェクトの間の関連付けを除去する
このクラスで使用可能なメソッドを以下に示します。
前述のすべてのモデル化属性には、パブリック setter メソッドとパブリック getter メソッドがあります。
このクラスで使用可能な属性とメソッドの詳細については、Windchill リリース関連の Java ドキュメンテーションを参照してください。
* 
属性 defaultForContext の場合、パブリック getter メソッドの名前は isDefaultForContext です。これは単に属性の値を返します。
ESITargetAssignmentLink
配布ターゲットの割当は、Windchill 永続可能オブジェクトと ESITarget の間に永続関係を作成することによって実現します。ESITargetAssignmentLink オブジェクトはこれらの関係を表します。ESITargetAssignmentLinkwc.fc.ObjectToObjectLink のサブクラスであり、そのクラスの永続関係機能を継承します (「Windchill ESI レンダラーの使用」の図を参照)。
ESITargetAssociation
Windchill ESI Services のメソッドは、多くの場合、Windchill 永続可能オブジェクトと ESITarget の間の関係を一時的に維持する必要があります。この関係はデータベース内で永続化できますが、必ずしも永続化する必要はありません。ESITargetAssociation インタフェースは、Windchill ESI Services のメソッド用に関係管理機能を提供します。これらのメソッドは関係が永続化されているかどうかを知る必要はありません。Windchill ESI Services の一般公開されているいくつかのメソッドは、ESITargetAssociation オブジェクトのコレクションを引数としてとります。これらのメソッドは、多くの場合、ESITargetAssociation オブジェクトのコレクションを返します。
関係が永続化されていることがわかっている場合、ESITargetAssignmentLink オブジェクトが Windchill 永続オブジェクトマネージャから作成または取得されます (「配布ターゲットの割当オブジェクト」の図を参照)。
ESIQueryTargetAssociation
関係が永続化されていることが不明である場合、ESIQueryTargetAssociation オブジェクトが Windchill ESI サービスの呼び出し元によって作成されます (「Windchill ESI レンダラーの使用」の図を参照)。Windchill ESI Services API のいくつかのメソッドでは、引数として ESITargetAssociation のインスタンスを指定する必要があります。このような引数を指定する必要があるオブジェクトに便宜を図るために ESIQueryTargetAssociation クラスが提供されています。ESIQueryTargetAssociation を使用しているオブジェクトは、データベース内にオブジェクトを作成する必要がありません。
配布ターゲットの割当オブジェクト
これは役に立ちましたか?