Class BaseAttributeFilter

  • All Implemented Interfaces:
    Serializable, NotificationFilter

    public class BaseAttributeFilter
    extends Object
    implements NotificationFilter

    Implementation of NotificationFilter for attribute change notifications. This class is used by BaseModelMBean to construct attribute change notification event filters when a filter is not supplied by the application.

    Author:
    Craig R. McClanahan
    See Also:
    Serialized Form
    • Constructor Detail

      • BaseAttributeFilter

        public BaseAttributeFilter​(String name)
        Construct a new filter that accepts only the specified attribute name.
        Parameters:
        name - Name of the attribute to be accepted by this filter, or null to accept all attribute names
    • Method Detail

      • addAttribute

        public void addAttribute​(String name)
        Add a new attribute name to the set of names accepted by this filter.
        Parameters:
        name - Name of the attribute to be accepted
      • clear

        public void clear()
        Clear all accepted names from this filter, so that it will accept all attribute names.
      • 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.
        Returns:
        the array of names
      • isNotificationEnabled

        public boolean isNotificationEnabled​(Notification notification)

        Test whether notification enabled for this event. Return true if:

        • This is an attribute change notification
        • 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 interface NotificationFilter
      • removeAttribute

        public void removeAttribute​(String name)
        Remove an attribute name from the set of names accepted by this filter.
        Parameters:
        name - Name of the attribute to be removed