Class BaseAttributeFilter

java.lang.Object
org.apache.tomcat.util.modeler.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:
  • Constructor Details

    • 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 Details

    • 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