# Class StoreDescription

java.lang.Object
org.apache.catalina.storeconfig.StoreDescription

public class StoreDescription extends Object
Bean of a StoreDescription

     <Description
     tag="Context"
     standard="true"
     default="true"
     externalAllowed="true"
     storeSeparate="true"
     backup="true"
     children="true"
     tagClass="org.apache.catalina.core.StandardContext"
     storeFactoryClass="org.apache.catalina.storeconfig.StandardContextSF"
     storeAppenderClass="org.apache.catalina.storeconfig.StoreContextAppender">
        <TransientAttribute>available</TransientAttribute>
        <TransientAttribute>configFile</TransientAttribute>
        <TransientAttribute>configured</TransientAttribute>
        <TransientAttribute>displayName</TransientAttribute>
        <TransientAttribute>distributable</TransientAttribute>
        <TransientAttribute>domain</TransientAttribute>
        <TransientAttribute>engineName</TransientAttribute>
        <TransientAttribute>name</TransientAttribute>
        <TransientAttribute>publicId</TransientAttribute>
        <TransientAttribute>replaceWelcomeFiles</TransientAttribute>
        <TransientAttribute>saveConfig</TransientAttribute>
        <TransientAttribute>sessionTimeout</TransientAttribute>
        <TransientAttribute>startupTime</TransientAttribute>
        <TransientAttribute>tldScanTime</TransientAttribute>
     </Description>

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StoreDescription()`
  Constructs a new StoreDescription with default settings.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addTransientAttribute(String attribute)`
  Adds an attribute name to the list of transient attributes that should not be persisted.
  `void`
  `addTransientChild(String classname)`
  Adds a child class name to the list of transient children that should not be persisted.
  `String`
  `getId()`
  Return the real id or TagClass
  `IStoreFactory`
  `getStoreFactory()`
  Returns the StoreFactory instance used to create objects for this description.
  `String`
  `getStoreFactoryClass()`
  Returns the fully qualified class name of the StoreFactory implementation.
  `String`
  `getTag()`
  Returns the XML tag name for this description.
  `String`
  `getTagClass()`
  Returns the fully qualified class name associated with this description's tag.
  `boolean`
  `isAttributes()`
  Indicates whether the attributes of this component should be stored.
  `boolean`
  `isBackup()`
  Indicates whether a backup of the configuration should be created.
  `boolean`
  `isChildren()`
  Indicates whether child components should be stored.
  `boolean`
  `isDefault()`
  Indicates whether this description represents a default component.
  `boolean`
  `isExternalAllowed()`
  Indicates whether external (separate file) storage is allowed for this description.
  `boolean`
  `isExternalOnly()`
  Indicates whether this description is restricted to external storage only.
  `boolean`
  `isStandard()`
  Indicates whether this description represents a standard component.
  `boolean`
  `isStoreSeparate()`
  Indicates whether this component should be stored in a separate file.
  `boolean`
  `isTransientAttribute(String attribute)`
  Is attribute transient, please don't save this.
  `boolean`
  `isTransientChild(String classname)`
  Is child transient, please don't save this.
  `void`
  `removeTransientAttribute(String attribute)`
  Removes an attribute name from the list of transient attributes.
  `void`
  `removeTransientChild(String classname)`
  Removes a child class name from the list of transient children.
  `void`
  `setAttributes(boolean attributes)`
  Sets whether the attributes of this component should be stored.
  `void`
  `setBackup(boolean backup)`
  Sets whether a backup of the configuration should be created.
  `void`
  `setChildren(boolean children)`
  Sets whether child components should be stored.
  `void`
  `setDefault(boolean aDefault)`
  Sets whether this description represents a default component.
  `void`
  `setExternalAllowed(boolean external)`
  Sets whether external (separate file) storage is allowed for this description.
  `void`
  `setExternalOnly(boolean external)`
  Sets whether this description is restricted to external storage only.
  `void`
  `setId(String id)`
  Sets the unique identifier for this description.
  `void`
  `setStandard(boolean standard)`
  Sets whether this description represents a standard component.
  `void`
  `setStoreFactory(IStoreFactory storeFactory)`
  Sets the StoreFactory instance used to create objects for this description.
  `void`
  `setStoreFactoryClass(String storeFactoryClass)`
  Sets the fully qualified class name of the StoreFactory implementation.
  `void`
  `setStoreSeparate(boolean storeSeparate)`
  Sets whether this component should be stored in a separate file.
  `void`
  `setTag(String tag)`
  Sets the XML tag name for this description.
  `void`
  `setTagClass(String tagClass)`
  Sets the fully qualified class name associated with this description's tag.

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### StoreDescription

    public StoreDescription()
    Constructs a new StoreDescription with default settings.

- ## Method Details

  - ### isExternalAllowed

    public boolean isExternalAllowed()
    Indicates whether external (separate file) storage is allowed for this description.
    Returns:
      true if external storage is allowed

  - ### setExternalAllowed

    public void setExternalAllowed(boolean external)
    Sets whether external (separate file) storage is allowed for this description.
    Parameters:
      `external` - true if external storage is allowed

  - ### isExternalOnly

    public boolean isExternalOnly()
    Indicates whether this description is restricted to external storage only.
    Returns:
      true if external storage is the only allowed option

  - ### setExternalOnly

    public void setExternalOnly(boolean external)
    Sets whether this description is restricted to external storage only.
    Parameters:
      `external` - true if external storage is the only allowed option

  - ### isStandard

    public boolean isStandard()
    Indicates whether this description represents a standard component.
    Returns:
      true if this is a standard component

  - ### setStandard

    public void setStandard(boolean standard)
    Sets whether this description represents a standard component.
    Parameters:
      `standard` - true if this is a standard component

  - ### isBackup

    public boolean isBackup()
    Indicates whether a backup of the configuration should be created.
    Returns:
      true if backup is enabled

  - ### setBackup

    public void setBackup(boolean backup)
    Sets whether a backup of the configuration should be created.
    Parameters:
      `backup` - true if backup is enabled

  - ### isDefault

    public boolean isDefault()
    Indicates whether this description represents a default component.
    Returns:
      true if this is a default component

  - ### setDefault

    public void setDefault(boolean aDefault)
    Sets whether this description represents a default component.
    Parameters:
      `aDefault` - true if this is a default component

  - ### getStoreFactoryClass

    public String getStoreFactoryClass()
    Returns the fully qualified class name of the StoreFactory implementation.
    Returns:
      the StoreFactory class name

  - ### setStoreFactoryClass

    public void setStoreFactoryClass(String storeFactoryClass)
    Sets the fully qualified class name of the StoreFactory implementation.
    Parameters:
      `storeFactoryClass` - the StoreFactory class name

  - ### getStoreFactory

    public IStoreFactory getStoreFactory()
    Returns the StoreFactory instance used to create objects for this description.
    Returns:
      the StoreFactory instance

  - ### setStoreFactory

    public void setStoreFactory(IStoreFactory storeFactory)
    Sets the StoreFactory instance used to create objects for this description.
    Parameters:
      `storeFactory` - the StoreFactory instance

  - ### getTag

    public String getTag()
    Returns the XML tag name for this description.
    Returns:
      the XML tag name

  - ### setTag

    public void setTag(String tag)
    Sets the XML tag name for this description.
    Parameters:
      `tag` - the XML tag name

  - ### getTagClass

    public String getTagClass()
    Returns the fully qualified class name associated with this description's tag.
    Returns:
      the tag class name

  - ### setTagClass

    public void setTagClass(String tagClass)
    Sets the fully qualified class name associated with this description's tag.
    Parameters:
      `tagClass` - the tag class name

  - ### addTransientAttribute

    public void addTransientAttribute(String attribute)
    Adds an attribute name to the list of transient attributes that should not be persisted.
    Parameters:
      `attribute` - the attribute name to add

  - ### removeTransientAttribute

    public void removeTransientAttribute(String attribute)
    Removes an attribute name from the list of transient attributes.
    Parameters:
      `attribute` - the attribute name to remove

  - ### addTransientChild

    public void addTransientChild(String classname)
    Adds a child class name to the list of transient children that should not be persisted.
    Parameters:
      `classname` - the child class name to add

  - ### removeTransientChild

    public void removeTransientChild(String classname)
    Removes a child class name from the list of transient children.
    Parameters:
      `classname` - the child class name to remove

  - ### isTransientChild

    public boolean isTransientChild(String classname)
    Is child transient, please don't save this.
    Parameters:
      `classname` - The class name to check
    Returns:
      true if the classname is a transient child

  - ### isTransientAttribute

    public boolean isTransientAttribute(String attribute)
    Is attribute transient, please don't save this.
    Parameters:
      `attribute` - The attribute name to check
    Returns:
      true if the attribute is transient

  - ### getId

    public String getId()
    Return the real id or TagClass
    Returns:
      Returns the id.

  - ### setId

    public void setId(String id)
    Sets the unique identifier for this description.
    Parameters:
      `id` - the unique identifier

  - ### isAttributes

    public boolean isAttributes()
    Indicates whether the attributes of this component should be stored.
    Returns:
      true if attributes should be stored

  - ### setAttributes

    public void setAttributes(boolean attributes)
    Sets whether the attributes of this component should be stored.
    Parameters:
      `attributes` - true if attributes should be stored

  - ### isStoreSeparate

    public boolean isStoreSeparate()
    Indicates whether this component should be stored in a separate file.
    Returns:
      true if it's a separate store

  - ### setStoreSeparate

    public void setStoreSeparate(boolean storeSeparate)
    Sets whether this component should be stored in a separate file.
    Parameters:
      `storeSeparate` - true if it should be stored separately

  - ### isChildren

    public boolean isChildren()
    Indicates whether child components should be stored.
    Returns:
      true if children should be stored

  - ### setChildren

    public void setChildren(boolean children)
    Sets whether child components should be stored.
    Parameters:
      `children` - true if children should be stored