SetPropertiesRule (Apache Tomcat 11.0.23 API Documentation)
Description: declaration: package: org.apache.tomcat.util.digester, class: SetPropertiesRule

# Class SetPropertiesRule

java.lang.Object
org.apache.tomcat.util.digester.Rule
org.apache.tomcat.util.digester.SetPropertiesRule

public class SetPropertiesRule extends Rule

Rule implementation that sets properties on the object at the top of the stack, based on attributes with corresponding names.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static interface`
  `SetPropertiesRule.Listener`
  Callback interface for objects that need to be notified when all XML attributes have been processed by this rule.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final HashMap<String,String>`
  `excludes`
  The set of property names to exclude from processing, or `null` if all properties should be processed.

  ### Fields inherited from class Rule

  `digester, namespaceURI, sm`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SetPropertiesRule()`
  Create a new SetPropertiesRule that will process all attributes.
  `SetPropertiesRule(String[] exclude)`
  Create a new SetPropertiesRule that will exclude the specified property names from being set.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `begin(String namespace, String theName, Attributes attributes)`
  Process the beginning of this element.
  `String`
  `toString()`
  Render a printable version of this Rule.

  ### Methods inherited from class Rule

  `body, end, finish, getDigester, getNamespaceURI, setDigester, setNamespaceURI`

  ### Methods inherited from class Object

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

- ## Field Details

  - ### excludes

    protected final HashMap<String,String> excludes
    The set of property names to exclude from processing, or `null` if all properties should be processed.

- ## Constructor Details

  - ### SetPropertiesRule

    public SetPropertiesRule()
    Create a new SetPropertiesRule that will process all attributes.

  - ### SetPropertiesRule

    public SetPropertiesRule(String[] exclude)
    Create a new SetPropertiesRule that will exclude the specified property names from being set.
    Parameters:
      `exclude` - the property names to exclude

- ## Method Details

  - ### begin

    public void begin(String namespace, String theName, Attributes attributes) throws Exception
    Process the beginning of this element.
    Overrides:
      `begin` in class `Rule`
    Parameters:
      `namespace` - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
      `theName` - the local name if the parser is namespace aware, or just the element name otherwise
      `attributes` - The attribute list for this element
    Throws:
      `Exception` - if an error occurs while processing the event

  - ### toString

    public String toString()
    Render a printable version of this Rule.
    Overrides:
      `toString` in class `Object`