이 작업은 구성 관리자 프록시(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 응용프로그램이 대기하기 때문에 명령 결과를 판별하는 이 알고리즘은 멀티스레드 응용프로그램에 부적합할 뿐만 아니라 비효율적입니다.
이 작업을 수행하는 더 좋은 방법으로 관리 오브젝트 공고를 사용합니다(오브젝트 공고와 함께 구성 관리자 프록시를 사용한 브로커 도메인 관리의 결과 점검 참조).