compact3
javax.management.relation

## 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 Summary

Constructors
Constructor and Description
`MBeanServerNotificationFilter()` Creates a filter selecting all MBeanServerNotification notifications for all ObjectNames.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `disableAllObjectNames()` Disables any MBeanServerNotification (all ObjectNames are deselected).
`void` `disableObjectName(ObjectName objectName)` Disables MBeanServerNotifications concerning given ObjectName.
`void` `enableAllObjectNames()` Enables all MBeanServerNotifications (all ObjectNames are selected).
`void` `enableObjectName(ObjectName objectName)` Enables MBeanServerNotifications concerning given ObjectName.
`Vector<ObjectName>` `getDisabledObjectNames()` Gets all the ObjectNames disabled.
`Vector<ObjectName>` `getEnabledObjectNames()` Gets all the ObjectNames enabled.
`boolean` `isNotificationEnabled(Notification notif)` Invoked before sending the specified notification to the listener.

### Methods inherited from class javax.management.NotificationFilterSupport

`disableAllTypes, disableType, enableType, getEnabledTypes`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### MBeanServerNotificationFilter

    public MBeanServerNotificationFilter()

Creates a filter selecting all MBeanServerNotification notifications for all ObjectNames.

### Method Detail

#### 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