Class MBeanServerNotificationFilter

java.lang.Object
javax.management.NotificationFilterSupport
javax.management.relation.MBeanServerNotificationFilter
All Implemented Interfaces:
Serializable, NotificationFilter

public class MBeanServerNotificationFilter extends NotificationFilterSupport
Filter for MBeanServerNotification. This filter filters MBeanServerNotification notifications by selecting the ObjectNames of interest and the operations (registration, unregistration, both) of interest (corresponding to notification types).

The serialVersionUID of this class is 2605900539589789736L.

Since:
1.5
See Also:
Serialized Form
  • Constructor Details

    • MBeanServerNotificationFilter

      public MBeanServerNotificationFilter()
      Creates a filter selecting all MBeanServerNotification notifications for all ObjectNames.
  • Method Details

    • disableAllObjectNames

      public void disableAllObjectNames()
      Disables any MBeanServerNotification (all ObjectNames are deselected).
    • disableObjectName

      public void disableObjectName(ObjectName objectName) throws IllegalArgumentException
      Disables MBeanServerNotifications concerning given ObjectName.
      Parameters:
      objectName - ObjectName no longer of interest
      Throws:
      IllegalArgumentException - if the given ObjectName is null
    • enableAllObjectNames

      public void enableAllObjectNames()
      Enables all MBeanServerNotifications (all ObjectNames are selected).
    • enableObjectName

      public void enableObjectName(ObjectName objectName) throws IllegalArgumentException
      Enables MBeanServerNotifications concerning given ObjectName.
      Parameters:
      objectName - ObjectName of interest
      Throws:
      IllegalArgumentException - if the given ObjectName is null
    • getEnabledObjectNames

      public Vector<ObjectName> getEnabledObjectNames()
      Gets all the ObjectNames enabled.
      Returns:
      Vector of ObjectNames:

      - null means all ObjectNames are implicitly selected, except the ObjectNames explicitly deselected

      - empty means all ObjectNames are deselected, i.e. no ObjectName selected.

    • getDisabledObjectNames

      public Vector<ObjectName> getDisabledObjectNames()
      Gets all the ObjectNames disabled.
      Returns:
      Vector of ObjectNames:

      - null means all ObjectNames are implicitly deselected, except the ObjectNames explicitly selected

      - empty means all ObjectNames are selected, i.e. no ObjectName deselected.

    • isNotificationEnabled

      public boolean isNotificationEnabled(Notification notif) throws IllegalArgumentException
      Invoked before sending the specified notification to the listener.

      If:

      - the ObjectName of the concerned MBean is selected (explicitly OR (implicitly and not explicitly deselected))

      AND

      - the type of the operation (registration or unregistration) is selected

      then the notification is sent to the listener.

      Specified by:
      isNotificationEnabled in interface NotificationFilter
      Overrides:
      isNotificationEnabled in class NotificationFilterSupport
      Parameters:
      notif - The notification to be sent.
      Returns:
      true if the notification has to be sent to the listener, false otherwise.
      Throws:
      IllegalArgumentException - if null parameter