JavaTM Platform
Standard Ed. 6

javax.management
인터페이스 NotificationEmitter

모든 슈퍼 인터페이스:
NotificationBroadcaster
기존의 구현 클래스의 일람:
CounterMonitor , GaugeMonitor , JMXConnectorServer , MBeanServerDelegate , Monitor , NotificationBroadcasterSupport , RelationService , RequiredModelMBean , RMIConnectorServer , StandardEmitterMBean , StringMonitor , Timer


public interface NotificationEmitter
extends NotificationBroadcaster

Notification 를 발행하는 MBean 가 구현하고 있는 인터페이스. 이 인터페이스에 의해, 청취자를 통지 청취자로서 MBean 에 등록할 수 있습니다.

통지 발송

MBean 는, 통지의 발행시에,addNotificationListener 를 사용해 추가되어 한편 removeNotificationListener 을 사용해 삭제되어 있지 않은 각 청취자를 고려에 넣습니다. 청취자에 대해서 필터가 제공되었을 경우, 및 필터의 isNotificationEnabled 메소드가 false 를 돌려주는 경우, 그 청취자는 무시됩니다. 그 이외의 경우, 통지, 및 addNotificationListener 에 제공된 핸드백 객체를 사용해, 청취자의 handleNotification 메소드가 불려 갑니다.

동일한 청취자가 여러 차례 추가되는 경우, 추가될 때마다 고려됩니다. 이것은, 1 살의 청취자를 다른 필터나 핸드백 객체를 사용해 추가하는 경우에, 자주 도움이 됩니다.

이 인터페이스의 구현은, 필터나 청취자의 메소드가 불려 가는 thread에 의해 다른 일이 있습니다.

필터 또는 청취자의 메소드 호출에 의해 Exception 가 throw 되는 경우, 다른 청취자의 호출이 그 예외에 의해 방해할 수 없게 할 필요가 있습니다. 다만, 메소드 호출에 의해 Error 가 throw 되는 경우는, 그 시점에서 통지의 처리를 정지하는 것이 추천 되고 있습니다. 또,Error 를 통지의 송신 측에 보내는 것이 가능하면, 그렇게 해 주세요.

새로운 코드는, 이 인터페이스를,NotificationBroadcaster 인터페이스보다 우선합니다.

이 인터페이스 및 NotificationBroadcaster 의 구현에서는, 동기를 주의 깊게 실시할 필요가 있습니다. 특히, 구현이 청취자의 호출시에 락을 보관 유지하는 것은, 좋은 방법이 아닙니다. 통지의 발송중에 청취자의 리스트가 변경될 가능성에 대처하는 좋은 방법은, 이 리스트로 CopyOnWriteArrayList 를 사용하는 것입니다.

도입된 버젼:
1.5

메소드의 개요
 void removeNotificationListener (NotificationListener  listener, NotificationFilter  filter, Object  handback)
          이 MBean 로부터 청취자를 삭제합니다.
 
인터페이스 javax.management. NotificationBroadcaster 로부터 상속된 메소드
addNotificationListener , getNotificationInfo , removeNotificationListener
 

메소드의 상세

removeNotificationListener

void removeNotificationListener(NotificationListener  listener,
                                NotificationFilter  filter,
                                Object  handback)
                                throws ListenerNotFoundException 

이 MBean 로부터 청취자를 삭제합니다. MBean 는, 지정된 listener,filter, 및 handback 파라미터와 정확하게 일치하는 청취자를 가지고 있을 필요가 있습니다. 해당하는 청취자가 복수 존재하는 경우, 그 중의 1 개(살)만이 삭제됩니다.

삭제되는 청취자내에서 null 가 지정되고 있는 경우,filterhandback 파라미터는 null 가 됩니다.

파라미터:
listener - 이전에 이 MBean 에 추가되었다 청취자
filter - 청취자의 추가시로 지정되었다 필터
handback - 청취자의 추가시로 지정되었다 핸드백
예외:
ListenerNotFoundException - 청취자가 MBean 에 등록되지 않은 경우, 또는 지정된 필터 및 핸드백으로 등록되지 않은 경우

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.