StoreFactoryRule (Apache Tomcat 8.5.83 API Documentation)

Package org.apache.catalina.storeconfig

## Class StoreFactoryRule

- java.lang.Object
- - org.apache.tomcat.util.digester.Rule
  - - org.apache.catalina.storeconfig.StoreFactoryRule

-     public class StoreFactoryRule
      extends Rule

  Rule that creates a new `IStoreFactory` instance, and associates it with the top object on the stack (which must implement `IStoreFactory`).

- - ### Field Summary

    - ### Fields inherited from class org.apache.tomcat.util.digester.Rule

      `digester, namespaceURI`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `StoreFactoryRule​(java.lang.String storeFactoryClass, java.lang.String attributeName, java.lang.String storeAppenderClass, java.lang.String appenderAttributeName)` | Construct a new instance of this Rule.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `begin​(java.lang.String namespace, java.lang.String name, org.xml.sax.Attributes attributes)` | Handle the beginning of an XML element.
    `protected java.lang.Object` | `newInstance​(java.lang.String attr, java.lang.String defaultName, org.xml.sax.Attributes attributes)` | Create new instance from attribute className!

    - ### Methods inherited from class org.apache.tomcat.util.digester.Rule

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

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### StoreFactoryRule

          public StoreFactoryRule​(java.lang.String storeFactoryClass,
                                  java.lang.String attributeName,
                                  java.lang.String storeAppenderClass,
                                  java.lang.String appenderAttributeName)

      Construct a new instance of this Rule.
      Parameters:
        `storeFactoryClass` - Default name of the StoreFactory implementation class to be created
        `attributeName` - Name of the attribute that optionally includes an override name of the IStoreFactory class
        `storeAppenderClass` - The store appender class
        `appenderAttributeName` - The attribute name for the store appender class

  - ### Method Detail

    - #### begin

          public void begin​(java.lang.String namespace,
                            java.lang.String name,
                            org.xml.sax.Attributes attributes)
                     throws java.lang.Exception

      Handle the beginning of an XML element.
      Overrides:
        `begin` in class `Rule`
      Parameters:
        `namespace` - XML namespace
        `name` - The element name
        `attributes` - The attributes of this element
      Throws:
        `java.lang.Exception` - if a processing error occurs

    - #### newInstance

          protected java.lang.Object newInstance​(java.lang.String attr,
                                                 java.lang.String defaultName,
                                                 org.xml.sax.Attributes attributes)
                                          throws java.lang.ReflectiveOperationException

      Create new instance from attribute className!
      Parameters:
        `attr` - class Name attribute
        `defaultName` - Default Class
        `attributes` - current digester attribute elements
      Returns:
        new configured object instance
      Throws:
        `java.lang.ReflectiveOperationException` - Error creating an instance