MIF 3.0.1 README

Retired DISLab
Swpark (토론 | 기여) 사용자의 2014년 1월 28일 (화) 10:06 버전
(비교) ← 이전 판 | 현재 판 (비교) | 다음 판 → (비교)
이동: 둘러보기, 찾기

변경된 점

  1. BlackboardMonitor에 post함수가 추가되었습니다.
    • 기존 update 함수와 사용방식은 동일합니다.
    • post 함수의 경우 해당 필드가 존재하지 않더라도 subscribe 한 어플리케이션에 알림을 보냅니다.
    • 필드가 존재할 경우 블랙보드에 값을 기록합니다. 그 후 update와는 다르게 이전 값과 비교해서 변함이 없더라도 알림을 보냅니다.
  2. BlackboardMonitor에 exists함수가 추가되었습니다.
    • 해당 오브젝트와 필드가 만들어져 있는지 확인합니다. true일 경우 존재하고, false일경우 존재하지 않습니다.
  3. Exception 처리방식을 변경했습니다.
    • 이제 BlackboardMonitor, AgentMonitor의 함수를 사용하실 때 기존과 같이 RemoteException에 대해 try-catch를 써줄 필요가 없습니다.(기존 써두신 것들은 지워주셔야 합니다.)
    • 블랙보드와 연결되지 않은상태라면 BlackboardNotConnectedException과 함께 어플리케이션이 종료됩니다.
    • 해당 필드가 존재하지 않는 상태에서 update, get 등을 수행할 경우 FieldNotFoundException과 함께 어플리케이션이 종료됩니다.
    • 이 변경점들 때문에 소스코드를 수정해야 합니다.
  4. 기존 Card Library를 사용한 어플리케이션의 requestCard함수가 callAgent로 바뀌었습니다.
    • requestCode를 넣을 수 있도록 변경되었습니다. 요청에 의해 추가된 부분으로 requestCode를 넣어 보낼 경우 결과또한 같은 requestCode로 보내어 집니다.
    • requestCode를 사용하지 않으신다면 수정하지 않아도 됩니다.
  5. 기존 Card Library의 onReceiveCard가 onAgentReply로 변경되었습니다.
    • Card Library를 사용하신다면 반드시 변경해줘야 합니다.
    • requestCode가 필요없으시면서 변경을 편하게 하시려면 onAgentReply함수 안에 'onReceiveCard(agent, agentData);' 와 같이 바로 기존의 함수로 연결하시면 되겠습니다. 두 번째 인자가 requestCode 입니다.
  6. 기존 Agent의 onRequestCard의 마지막에 Blackboard.getInstance().sendResult(...)로 카드프로그램에 결과를 보냈었던 것이 단순히 sendResult(..)로 변경되었습니다. 이에 따라 보내는 측에서는 requestCode를 생각하지 않아도자동으로 발송됩니다.
    • 코드를 수정해 줘야 합니다.
  7. 기존 한 어플리케이션에서는 예를들어 subscribe를 3번 부를 경우 unsubscribe도 3번 해야 해제가 되었습니다. 현재는 같은 값에 대한 subscribe는 한 번의 unsubscribe로 바로 해제 가능합니다.

현재 버전에 맞춘 코드 짜는 방식은 '활용 예제 설명 및 프로그램'에서 확인 가능합니다.

개인 도구
이름공간
변수
행위
둘러보기
구성원
연구
연구실
기타
도구모음
인쇄/내보내기