javax.management
Class NotificationFilterSupport

java.lang.Object sample code for java.lang.Object definition code for java.lang.Object 
  extended by javax.management.NotificationFilterSupport
All Implemented Interfaces:
Serializable sample code for java.io.Serializable definition code for java.io.Serializable , NotificationFilter sample code for javax.management.NotificationFilter definition code for javax.management.NotificationFilter
Direct Known Subclasses:
MBeanServerNotificationFilter sample code for javax.management.relation.MBeanServerNotificationFilter definition code for javax.management.relation.MBeanServerNotificationFilter

public class NotificationFilterSupport
extends Object sample code for java.lang.Object definition code for java.lang.Object
implements NotificationFilter sample code for javax.management.NotificationFilter definition code for javax.management.NotificationFilter , Serializable sample code for java.io.Serializable definition code for java.io.Serializable

Provides an implementation of the NotificationFilter sample code for javax.management.NotificationFilter definition code for javax.management.NotificationFilter interface. The filtering is performed on the notification type attribute.

Manages a list of enabled notification types. A method allows users to enable/disable as many notification types as required.

Then, before sending a notification to a listener registered with a filter, the notification broadcaster compares this notification type with all notification types enabled by the filter. The notification will be sent to the listener only if its filter enables this notification type.

Example:

 NotificationFilterSupport myFilter = new NotificationFilterSupport();
 myFilter.enableType("my_example.my_type");
 myBroadcaster.addListener(myListener, myFilter, null);
 
The listener myListener will only receive notifications the type of which equals/starts with "my_example.my_type".

Since:
1.5
See Also:
NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object) sample code for javax.management.NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object) definition code for javax.management.NotificationBroadcaster.addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object) , Serialized Form

Constructor Summary
NotificationFilterSupport sample code for javax.management.NotificationFilterSupport.NotificationFilterSupport() definition code for javax.management.NotificationFilterSupport.NotificationFilterSupport() ()
           
 
Method Summary
 void disableAllTypes sample code for javax.management.NotificationFilterSupport.disableAllTypes() definition code for javax.management.NotificationFilterSupport.disableAllTypes() ()
          Disables all notification types.
 void disableType sample code for javax.management.NotificationFilterSupport.disableType(java.lang.String) definition code for javax.management.NotificationFilterSupport.disableType(java.lang.String) (String sample code for java.lang.String definition code for java.lang.String  prefix)
          Removes the given prefix from the prefix list.
 void enableType sample code for javax.management.NotificationFilterSupport.enableType(java.lang.String) definition code for javax.management.NotificationFilterSupport.enableType(java.lang.String) (String sample code for java.lang.String definition code for java.lang.String  prefix)
          Enables all the notifications the type of which starts with the specified prefix to be sent to the listener.
 Vector sample code for java.util.Vector definition code for java.util.Vector getEnabledTypes sample code for javax.management.NotificationFilterSupport.getEnabledTypes() definition code for javax.management.NotificationFilterSupport.getEnabledTypes() ()
          Gets all the enabled notification types for this filter.
 boolean isNotificationEnabled sample code for javax.management.NotificationFilterSupport.isNotificationEnabled(javax.management.Notification) definition code for javax.management.NotificationFilterSupport.isNotificationEnabled(javax.management.Notification) (Notification sample code for javax.management.Notification definition code for javax.management.Notification  notification)
          Invoked before sending the specified notification to the listener.
 
Methods inherited from class java.lang.Object sample code for java.lang.Object definition code for java.lang.Object
clone sample code for java.lang.Object.clone() definition code for java.lang.Object.clone() , equals sample code for java.lang.Object.equals(java.lang.Object) definition code for java.lang.Object.equals(java.lang.Object) , finalize sample code for java.lang.Object.finalize() definition code for java.lang.Object.finalize() , getClass sample code for java.lang.Object.getClass() definition code for java.lang.Object.getClass() , hashCode sample code for java.lang.Object.hashCode() definition code for java.lang.Object.hashCode() , notify sample code for java.lang.Object.notify() definition code for java.lang.Object.notify() , notifyAll sample code for java.lang.Object.notifyAll() definition code for java.lang.Object.notifyAll() , toString sample code for java.lang.Object.toString() definition code for java.lang.Object.toString() , wait sample code for java.lang.Object.wait() definition code for java.lang.Object.wait() , wait sample code for java.lang.Object.wait(long) definition code for java.lang.Object.wait(long) , wait sample code for java.lang.Object.wait(long, int) definition code for java.lang.Object.wait(long, int)
 

Constructor Detail

NotificationFilterSupport sample code for javax.management.NotificationFilterSupport() definition code for javax.management.NotificationFilterSupport()

public NotificationFilterSupport()
Method Detail

isNotificationEnabled sample code for javax.management.NotificationFilterSupport.isNotificationEnabled(javax.management.Notification) definition code for javax.management.NotificationFilterSupport.isNotificationEnabled(javax.management.Notification)

public boolean isNotificationEnabled(Notification sample code for javax.management.Notification definition code for javax.management.Notification  notification)
Invoked before sending the specified notification to the listener.
This filter compares the type of the specified notification with each enabled type. If the notification type matches one of the enabled types, the notification should be sent to the listener and this method returns true.

Specified by:
isNotificationEnabled sample code for javax.management.NotificationFilter.isNotificationEnabled(javax.management.Notification) definition code for javax.management.NotificationFilter.isNotificationEnabled(javax.management.Notification) in interface NotificationFilter sample code for javax.management.NotificationFilter definition code for javax.management.NotificationFilter
Parameters:
notification - The notification to be sent.
Returns:
true if the notification should be sent to the listener, false otherwise.

enableType sample code for javax.management.NotificationFilterSupport.enableType(java.lang.String) definition code for javax.management.NotificationFilterSupport.enableType(java.lang.String)

public void enableType(String sample code for java.lang.String definition code for java.lang.String  prefix)
                throws IllegalArgumentException sample code for java.lang.IllegalArgumentException definition code for java.lang.IllegalArgumentException 
Enables all the notifications the type of which starts with the specified prefix to be sent to the listener.
If the specified prefix is already in the list of enabled notification types, this method has no effect.

Example:

 // Enables all notifications the type of which starts with "my_example" to be sent.
 myFilter.enableType("my_example");
 // Enables all notifications the type of which is "my_example.my_type" to be sent.
 myFilter.enableType("my_example.my_type");
 
Note that:
myFilter.enableType("my_example.*");
will no match any notification type.

Parameters:
prefix - The prefix.
Throws:
IllegalArgumentException sample code for java.lang.IllegalArgumentException definition code for java.lang.IllegalArgumentException - The prefix parameter is null.

disableType sample code for javax.management.NotificationFilterSupport.disableType(java.lang.String) definition code for javax.management.NotificationFilterSupport.disableType(java.lang.String)

public void disableType(String sample code for java.lang.String definition code for java.lang.String  prefix)
Removes the given prefix from the prefix list.
If the specified prefix is not in the list of enabled notification types, this method has no effect.

Parameters:
prefix - The prefix.

disableAllTypes sample code for javax.management.NotificationFilterSupport.disableAllTypes() definition code for javax.management.NotificationFilterSupport.disableAllTypes()

public void disableAllTypes()
Disables all notification types.


getEnabledTypes sample code for javax.management.NotificationFilterSupport.getEnabledTypes() definition code for javax.management.NotificationFilterSupport.getEnabledTypes()

public Vector sample code for java.util.Vector definition code for java.util.Vector  getEnabledTypes()
Gets all the enabled notification types for this filter.

Returns:
The list containing all the enabled notification types.