これは、構成マネージャー・プロキシー (CMP) アプリケーションの開発という、より大きなタスクの一部です。
GregorianCalendar oldCCTime = b.getTimeOfLastCompletionCode(); b.setLongDescription(newDesc); GregorianCalendar newCCTime = oldCCTime; while (oldCCTime.equals(newCCTime)) { newCCTime = b.getTimeOfLastCompletionCode()); Thread.sleep(1000); } CompletionCodeType ccType = b.getLastCompletionCode(); if (ccType == CompletionCodeType.success) { // etc. }
この例では、アプリケーションは、トポロジーが完了コードを最後に受け取った時間 (つまり、トポロジーに対するアクションが最後に完了したとき) を頻繁に照会します。 createBroker() の結果が CMP に戻されるときに完了コードが更新され、制御は while ループから抜け出します。 この時点で、最後の完了コードが判別されます。
コマンドの結果を判別するためのこのアルゴリズムは、マルチスレッド・アプリケーションには不適当であると同時に、非効率的です。なぜなら、構成マネージャーが要求を処理している間、CMP アプリケーションは待機するからです。
これを行うためのより適した方法は、管理対象オブジェクトの通知を使用することです。構成マネージャー・プロキシーとオブジェクト通知を使用した、ブローカー・ドメイン管理の結果の検査を参照してください。