javax.management.NotificationInfos Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jsr255 Show documentation
Show all versions of jsr255 Show documentation
JSR 255 - Java™ Management Extensions (JMX™) API Specification 2.0 EARLY DRAFT REVIEW (December 2007)
The newest version!
/*-
* $Id: a2802727f9e3b6f937ae4904031a79706abcf0c3 $
*/
package javax.management;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.Documented;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import javax.management.remote.JMXConnectionNotification;
/**
*Specifies the kinds of notification an MBean can emit, when this
* cannot be represented by a single {@link NotificationInfo @NotificationInfo} annotation.
*
* For example, this annotation specifies that an MBean can emit
* {@link AttributeChangeNotification} and {@link JMXConnectionNotification}:
*
* @NotificationInfos
(
* @NotificationInfo
(
* types = {{@link AttributeChangeNotification#ATTRIBUTE_CHANGE}},
* notificationClass = AttributeChangeNotification.class),
* @NotificationInfo
(
* types = {{@link JMXConnectionNotification#OPENED},
* {@link JMXConnectionNotification#CLOSED}},
* notificationClass = JMXConnectionNotification.class)
* )
*
*
* If an MBean has both NotificationInfo
and NotificationInfos
on the same class or interface, the effect is
* the same as if the NotificationInfo
were moved inside the
* NotificationInfos
.
*/
@Documented
@Inherited
@Target(value = TYPE)
@Retention(value = RUNTIME)
public @interface NotificationInfos {
NotificationInfo[] value();
}