高度なカスタマイズ > サービスおよびインフラストラクチャのカスタマイズ > MPMLink のカスタマイズ > 矛盾タイプとサポートインタフェースの設定 > 手順
  
手順
カスタムコンフィギュレーションまたはカスタムロジックを含める手順を以下に示します。
1. enumCustomize ツールを使用して DiscrepancyTypeRB.rbInfo に新規 CUSTOM_DISCREPANCY を作成します。
2. 新規委任 CustomDiscrepancyDelegate を作成し、WT_HOME/codebase/com/ptc/windchill/associativity/xconfs/associativity.service.properties.xconf ファイルにエントリを追加します。
<Option cardinality="singleton" selector="CUSTOM_DISCREPANCY" requestor="null"
serviceClass="com.ptc.windchill.associativity.reconciliation.part.CustomDiscrepancyDelegate"/>
CustomDiscrepancyDelegate に以下のメソッドを実装します。
public Collection<Discrepancy2> detect(ReconciliationContext context, AssociativePath currentPath,AssociativePath oldPath) throws WTException ;
矛盾を検出するロジックを提供します。
public void verify(ReconciliationContext context, Collection<? extends Discrepancy2> discrepancies) throws WTException;
矛盾を検証するロジックを提供します。矛盾を検出するロジックと、それが有効で解決によって処理可能であるかを検証するロジックが別個に提供されます。
public ReconciliationReport resolve(ReconciliationContext context, Collection<? extends Discrepancy2> discrepancies) throws WTException;
矛盾を解決するロジックを提供します。
protected AbstractDiscrepancy2 getDiscrepancyInstance(ReconciliationContext context) throws WTException;
カスタム矛盾のインスタンスを返します。これをオーバーライドして、JSON (ReconciliationContext, String) メソッドのインスタンスを使用してデフォルトの情報を設定できます。
public boolean isOccurrenceBased();
矛盾がオカレンスに基づくか親子関係に基づくかを指定します。
public String toJSON(ReconciliationContext context, Discrepancy2 discrepancy) throws WTException;
サーバーからクライアントに情報を転送する手段を提供します。各委任によって、必要なすべての情報が確実に変換され、Discrepancy2 に再び変換可能になります。これを解決しなければならない場合、具体的な情報を JSON に追加する前にスーパーメソッドを呼び出します。
public Discrepancy2 fromJSON(ReconciliationContext context, String discrepancyData) throws WTException;
クライアントの情報を再びサーバーオブジェクトに転送する手段を提供します。各委任によって、必要なすべてのデータが確実に変換されて JSON (ReconciliationContext, Discrepancy2) と一貫したものになります。具体的な情報を処理する前にスーパーメソッドを呼び出します。
CustomDiscrepancyDelegate のコンフィギュレーションを以下に示します。