高度なカスタマイズ > サービスおよびインフラストラクチャのカスタマイズ > インポートとエクスポートのフレームワーク > ObjectSet アプリケーションによるオブジェクト構造のナビゲーション > > エクスポート/インポートアプリケーションの例: > インポートアプリケーション
  
インポートアプリケーション
現在の Windchill インポート GUI および StandardIXBService は、インポートアプリケーションです。現在の Windchill インポート OOTB GUI は、IXBHelper を通じて StandardIXBService (インポートアプリケーションサーバー) のインポート処理を呼び出すインポートアプリケーションクライアントです。
ObjectImportParameters importParam = new ObjectImportParameters ();
importParam.setActionName(actorName);
importParam.setContainer(container);
importParam.setDataFile(dataF);
importParam.setDetailedLog(detailedLog);
importParam.setGuiId(reqGUIid);
importParam.setPolicyFile(policyFile);
importParam.setPreviewOnly(isPreview);
importParam.setRuleFile(ruleF);
importParam.setValidation(true);
importParam.setLocale(RB.getLocale());
importParam.setOverrideConflicts(overrideC);
importParam.setContainerMappingFile(containerMappingFile);
importParam.getContextData().setIXApplicationContext(appContext);
IXBExpImpStatus status = IXBHelper.service.doImport (importParam );
StandardIXBService クラスのメソッド doImport(…) を呼び出してインポート処理を実行します。
IXBExpImpStatus は、エクスポート/インポート処理に関する情報を含む wt.ixb.clientsAccess のクラスであり、サーバーとクライアント間でエクスポート/インポートのステータスを渡すために使用されます。
ruleFile は、エクスポート処理の規則ファイルです。このファイルは Importer に提供されてインポート処理のチューナーを作成します。
dataFile は、インポートされるオブジェクトの XML ファイルが含まれている jar ファイルです。
overrideConflicts は、オーバーライド可能なコンフリクトをオーバーライドする必要があるかどうかを指定します。
isPreview は、実際のインポートを実行するか、コンフリクトをチェックしてインポートされるオブジェクトを表示するかを指定します。
guiId は、エクスポート処理を呼び出す GUI の ID です。GUIid の作成方法の例については、wt.clients.ixb.util.ExpImpServerRequest クラスの recordGuiIdInContext() メソッドを参照してください。
detailLog は、ステータスメッセージの詳細が必要かどうかを示します。
creatorName は、インポートされたトップレベルオブジェクト (例: EPMDocumentWTDocumentWTPart) の作成方法を指定します。
stDtd は、使用するエクスポート/インポートハンドラのバージョンを指定します。これは、下位互換性をサポートするために使用します。stDtd が Null または空 ("") の場合は、現在の Windchill システムのバージョンに基づいて STRING_DTD が計算されます。
IXBHelper.service.doImport(…) メソッドが呼び出されると、StandardIXBService のメソッド doImportImpl(…) が呼び出されます。
メソッドの説明:
インポートハンドラによって使用される作成者の名前を WTContext に追加します。
一般的なインポートハンドラである ImportHandler ハンドラを作成します。
jar.getFileNamesByExtension ("xml") を呼び出して、Jar ファイルからインポートされる XML ファイルのリストを取得します。
インポートを実行するクラス Importer のインスタンスを作成します。
メソッド doImportImpl(…) は、isPreview (true/false) に応じて、Importer の適切なメソッドを呼び出してプレビューまたは実際のインポートを実行します。
importer.doImport(stream);
importer.doPreview(stream);
その他 (importer.doImport(fn, tag)importer.doPreview(fn,tag)) は最適化用であり、これらは XML ファイルの命名方法に依存します。これは特定のエクスポート/インポートアプリケーション (wt.clients.ixbStandardIXBService) のための機能です。
クライアントにログメッセージを送信して戻します。