Package org.apache.commons.modeler
Class FixedNotificationFilter
- java.lang.Object
-
- org.apache.commons.modeler.FixedNotificationFilter
-
- All Implemented Interfaces:
Serializable
,NotificationFilter
public class FixedNotificationFilter extends Object implements NotificationFilter
Special NotificationFilter that allows modeler to optimize its notifications. This class is immutable - after you construct it it'll filter based on a fixed set of notification names. The JMX specification requires the filters to be called before the notifications are sent. We can call this filter well in advance, when the listener is added. Based on the result we can maintain separate channels for each notification - and reduce the overhead.- Author:
- Costin Manolache
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description FixedNotificationFilter(String[] names)
Construct a new filter that accepts only the specified notification names.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String[]
getNames()
Return the set of names that are accepted by this filter.boolean
isNotificationEnabled(Notification notification)
Test whether notification enabled for this event.
-
-
-
Constructor Detail
-
FixedNotificationFilter
public FixedNotificationFilter(String[] names)
Construct a new filter that accepts only the specified notification names.- Parameters:
names
- Names of the notification types
-
-
Method Detail
-
getNames
public String[] getNames()
Return the set of names that are accepted by this filter. If this filter accepts all attribute names, a zero length array will be returned.
-
isNotificationEnabled
public boolean isNotificationEnabled(Notification notification)
Test whether notification enabled for this event. Return true if:
- Either the set of accepted names is empty (implying that all attribute names are of interest) or the set of accepted names includes the name of the attribute in this notification
- Specified by:
isNotificationEnabled
in interfaceNotificationFilter
-
-