StoreLoader (Apache Tomcat 9.0.75 API Documentation)

Package org.apache.catalina.storeconfig

## Class StoreLoader

- java.lang.Object
- - org.apache.catalina.storeconfig.StoreLoader

-     public class StoreLoader
      extends java.lang.Object

  XML Format

             <Registry name="" encoding="UTF-8" >
               <Description
                   tag="Server"
                   standard="true"
                   default="true"
                   tagClass="org.apache.catalina.core.StandardServer"
                   storeFactoryClass="org.apache.catalina.storeconfig.StandardServerSF">
                 <TransientAttributes>
                   <Attribute></Attribute>
                 </TransientAttributes>
                 <TransientChildren>
                   <Child></Child>
                 </TransientChildren>
               </Description>
         ...
             </Registry>

  Convention:
  - Factories at subpackage org.apache.catalina.core.storeconfig.xxxSF .
  - Element name are the unique Class name
  - SF for StoreFactory
  - standard implementation is false
  other things:
  - Registry XML format is a very good option
  - Store format is not fix
  - We hope with the parent declaration we can build recursive child store operation //dream
  - Problem is to access child data from array,collections or normal detail object
  - Default definitions for Listener, Valve Resource? - Based on interface type!

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected static Digester` | `digester` | The `Digester` instance used to parse registry descriptors.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `StoreLoader()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected static Digester` | `createDigester()` | Create and configure the Digester we will be using for setup store registry.
    `StoreRegistry` | `getRegistry()` |
    `java.net.URL` | `getRegistryResource()` |
    `void` | `load​(java.lang.String path)` | Load registry configuration.
    `void` | `setRegistry​(StoreRegistry registry)` |

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

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

- - ### Field Detail

    - #### digester

          protected static final Digester digester

      The `Digester` instance used to parse registry descriptors.

  - ### Constructor Detail

    - #### StoreLoader

          public StoreLoader()

  - ### Method Detail

    - #### getRegistry

          public StoreRegistry getRegistry()

      Returns:
        Returns the registry.

    - #### setRegistry

          public void setRegistry​(StoreRegistry registry)

      Parameters:
        `registry` - The registry to set.

    - #### createDigester

          protected static Digester createDigester()

      Create and configure the Digester we will be using for setup store registry.
      Returns:
        the XML digester that will be used to parse the configuration

    - #### load

          public void load​(java.lang.String path)
                    throws java.lang.Exception

      Load registry configuration.
      Parameters:
        `path` - Path to the configuration file, may be null to use the default name server-registry.xml
      Throws:
        `java.lang.Exception` - when the configuration file isn't found or a parse error occurs

    - #### getRegistryResource

          public java.net.URL getRegistryResource()

      Returns:
        the registryResource.