グループ情報クラスとマップ情報クラス
Windchill ESI のグループ情報とマップ情報
ESIGroupInfo
Windchill ESI サービスのいくつかの RPC 応答は Info*Engine 仮想データベースオブジェクトです。VDB オブジェクトは Info*Engine グループオブジェクトから構成されています。ESIGroupInfo オブジェクトはグループの特性を定義します。属性は以下のとおりです。
isUnchanged : boolean
true に設定した場合、このグループには変更されていないデータのみが格納されているものと見なされます。ESI サービスは、この属性の値を基に、生成された ESI 応答に含まれているのが変更されていないデータだけであるかどうかを判別します。
logicalName : String
グループ情報マネージャからオブジェクトを取得する際に、このオブジェクトのクライアントによって使用される論理名。
physicalName : String
このオブジェクトが説明する Info*Engine グループに付ける名前。この名前は、そのグループの ESI 応答メッセージに表示されます。
releaseActivityNeeded : boolean
値が true の場合、グループのコンテンツが VDB ビルダーによって処理される際に、保留中の ReleaseActivity オブジェクトが作成されます。ReleaseActivity オブジェクトが存在する場合、Windchill ESI サービスは同じオブジェクトのパブリッシングを同時に複数回試みることがなくなります。
releaseClass : String
グループのコンテンツが処理されたときに作成される各 ReleaseActivity オブジェクトの releaseClass 属性に割り当てる値。
mapInfos : HashMap<String, ESIMapInfo>
オブジェクトタイプを表す文字列をキーとし、対応する ESIMapInfo オブジェクトを値とする HashMap。
このクラスのこれらの属性にはパブリック getter メソッドがあります。このクラスの追加のパブリックメソッドには次のものがあります。
ESIGroupInfo(logicalName : String, physicalName : String, mapInfo : ESIMapInfo, isReleaseActivityNeeded : boolean, releaseClass : String)
このコンストラクタは現在使用されていません。
ESIGroupInfo(logicalName : String, physicalName : String, mapInfos : HashMap<String, ESIMapInfo>, isReleaseActivityNeeded : boolean, releaseClass : String)
属性を入力値に設定して、新しい ESIGroupInfo インスタンスを作成します。
getMapInfo(typedef : String) : ESIMapInfo
入力オブジェクトタイプに対応する ESIMapInfo オブジェクトを返します。mapInfos 内の HashMap から必要な出力をフェッチします。
getMapSourceAttributes() : Collection
このメソッドは現在使用されていません。
getMapSourceAttributes(typedef : String) : Collection
入力オブジェクトタイプのソース属性の名前を表す文字列のコレクションを返します。
ESIGroupInfoManager
ESIGroupInfoManager は、ESIGroupInfo オブジェクトを作成してほかのオブジェクトで使用できるようにするファクトリです。VM にインスタンスが 1 つしか存在しないことを保証するシングルトンパターンを実装しています。
ESIGroupInfoManager()
デフォルトのコンストラクタは protected として宣言されています。これにより、このコンストラクタへのアクセスはクラスの static メソッドインスタンスを介して行われるようになります。このコンストラクタは buildTargetGroupMapInfo() を呼び出して、groupInfoTargetMap 内の HashMap を設定します。
getGroupInfo(groupName : String) : ESIGroupInfo
指定されたグループ名の ESIGroupInfo を返します。このメソッドは現在使用されていません。
getGroupInfo(groupName : String, target : ESITarget) : ESIGroupInfo
入力のグループ名と配布ターゲットの ESIGroupInfo オブジェクトを返します。groupInfoTargetMap 内の HashMap から必要な出力をフェッチします。
* 
groupInfoTargetMap 内の HashMap には、キーとして ESITargetResponseMetaInfo オブジェクトが格納され、いくつかの LinkedHashMap オブジェクトが値として格納されています。各 LinkedHashMap オブジェクトは、グループ名をキーとし、ESIGroupInfo オブジェクトを値とします。
* 
ESITargetResponseMetaInfo は ESIGroupInfoManager 内で定義されている内部クラスであり、ESITarget および関連する ESI 応答メタ情報ファイルパスを属性として持ちます。基本的に、これは特定の ESITarget オブジェクトを表しますが、ユーザーは関連する ESI 応答メタ情報ファイルパスをいつでも修正できるので、このクラスにターゲットとそのパスが一緒に格納されることで、groupInfoTargetMap に保存されているキーの一意性が保証されます。
getGroupInfos() : Collection
すべての ESIGroupInfo オブジェクトの順序付きコレクションを返します。このメソッドは現在使用されていません。
getGroupInfos(target : ESITarget) : Collection
入力配布ターゲットのすべての ESIGroupInfo オブジェクトの順序付きコレクションを返します。
<<Static>> instance() : ESIGroupInfoManager
_instance 属性の値を取得します。この属性が Null の場合、その値を返す前にインスタンスを作成してこの属性に保存します。
getGroupInfo (groupName : String, contained : WTContained) : ESIGroupInfo
contained インスタンスに関連付けられている組織の、渡された名前が付いた ESIGroupInfo オブジェクトを返します。このメソッドは現在使用されていません。
getGroupInfos (contained : WTContained) : Collection
contained インスタンスに関連付けられている組織に適用可能なすべての ESIGroupInfo オブジェクトのコレクションを返します。このメソッドは現在使用されていません。
buildTargetGroupMapInfo() : void
データベース内のアクティブな各 ESITarget オブジェクトに対して refreshTargetGroupMapInfo() を呼び出すことで、groupInfoTargetMap 内の HashMap を設定します。
refreshTargetGroupMapInfo(target : ESITarget) : boolean
入力配布ターゲットによって参照される ESI 応答メタ情報ファイルのコンテンツを解析することによって、groupInfoTargetMap 内の HashMap にエントリを追加します。ファイルの解析に成功した場合は true を返します。ファイルの解析中にエラーが発生した場合は false が返されます。
clearTargetGroupMapInfo(target : ESITarget) : void
groupInfoTargetMap 内の HashMap から入力配布ターゲットのエントリを除去します。
ESIMapInfo
各 ESIGroupInfo オブジェクトには、オブジェクトタイプを表す文字列をキーとし、対応する ESIMapInfo オブジェクトを値とする HashMap が格納されています。ESIMapInfo オブジェクトは、Info*Engine グループと、このグループのコンテンツのフォーマット設定に使用される ESIMap の間の関係を管理します。
* 
ESI 応答メタ情報ファイルから読み取られた関連 MapInformation エレメントのコンテンツに基づいて ESIMapInfo オブジェクトが作成されます。
このオブジェクトには次の属性があります。
mapFileName : String
ESIMapInfo オブジェクトを指定し、この属性の値をキーとして使用して、関連する ESIMap オブジェクトを ESIMapManager インスタンスの maps Hashtable からフェッチできます。
* 
この属性には、ESI 応答メタ情報ファイルから読み取られた Map エレメントの XML 属性 id の値が格納されます。
elementMetaName : String
オブジェクトをマッピングする際に、com.infoengine.xml.esi という名前のメタアイテムが出力 I*E エレメントに作成され、この属性の値が割り当てられます。これによって、I*E SOAP サーブレットはこの属性の値と同じ名前で出力 XML エレメントをレンダリングします。
keyAttributes : String[]
重複を除外するために使用されるキー属性の名前。Null の場合、エレメントはフィルタされません。
typedef : String
オブジェクトタイプを表す文字列が格納されます。たとえば、WTPart の ESIMapInfo オブジェクトではこの属性に wt.part.WTPart が格納されます。
* 
オブジェクトの属性 mapFileName、elementMetaName、keyAttributes、および typedef は、それぞれ ESI 応答メタ情報ファイルの XML エレメント mapRefelementMetaNamekeyAttributetypedef のコンテンツに基づいて設定されます。
このクラスのこれらの属性にはパブリック getter メソッドがあります。このクラスの追加のパブリックメソッドには次のものがあります。
ESIMapInfo(mapFileName : String, elementMetaName : String, keyAttributes : String[])
オブジェクトの唯一のコンストラクタであり、オブジェクトが適切に初期化されるようにします。
getMap() : ESIMap
mapFileName 属性の値によって指定された ESIMap を返します。
これは役に立ちましたか?