構成マネージャー・プロキシーと最後の完了コードを使用した、ブローカー・ドメイン管理の結果の検査

これは、構成マネージャー・プロキシー (CMP) アプリケーションの開発という、より大きなタスクの一部です。

CMP の状態変更メソッドの大部分では、この方法で戻りコードを使用しません。 こうしたメソッドの場合、アクションの結果の検出が多少複雑になることがあります。 管理対象オブジェクトがスレッド間で共用されていないことを前提として、以下のコード断片を使用して、ブローカーの LongDescription の変更要求の結果を見付けることができます。ここで、bBrokerProxy のインスタンスです。
GregorianCalendar oldCCTime =
                         b.getTimeOfLastCompletionCode();
b.setLongDescription(newDesc);
GregorianCalendar newCCTime = oldCCTime;
while ((newCCTime == null) || (newCCTime.equals(oldCCTime))) {
  newCCTime = b.getTimeOfLastCompletionCode());
  Thread.sleep(1000);
}
CompletionCodeType ccType = b.getLastCompletionCode();
if (ccType == CompletionCodeType.success) {
  // etc.
}

この例では、 アプリケーションはまず、getTimeOfLastCompletionCode() メソッドを使用してブローカー上での アクションが最後に完了したのはいつかを判別します。このメソッドは、 最後にトポロジーが完了コードを受信した時刻を戻します。戻りコードを受け取らなかったときは、 ヌル値を戻します。アプリケーションは、 ブローカーの LongDescription の更新を試行した後、 引き続きトポロジーをモニターして setLongDescription() コマンドの結果が CMP に 戻されるのを待ちます。この状態になると、while ループから制御が抜け、 最後の完了コードが判別されます。

コマンドの結果を判別するためのこのアルゴリズムは、マルチスレッド・アプリケーションには不適当であると同時に、非効率的です。なぜなら、構成マネージャーが要求を処理している間、CMP アプリケーションは待機するからです。

これを行うためのより適した方法は、管理対象オブジェクトの通知を使用することです。構成マネージャー・プロキシーとオブジェクト通知を使用した、ブローカー・ドメイン管理の結果の検査を参照してください。

関連タスク
構成マネージャー・プロキシーを使用したブローカー・ドメイン管理の結果の検査
構成マネージャー・プロキシーと戻りコードを使用した、ブローカー・ドメイン管理の結果の検査
構成マネージャー・プロキシーとオブジェクト通知を使用した、ブローカー・ドメイン管理の結果の検査
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ae33080_