# 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`
`getStoreWriterClass()`
Deprecated.
Will be removed in Tomcat 12
`String`
`getTag()`
Returns the XML tag name for this description.
`String`
`getTagClass()`
Returns the fully qualified class name associated with this description's tag.
`List<String>`
`getTransientAttributes()`
Deprecated.
Will be removed in Tomcat 12
`List<String>`
`getTransientChildren()`
Deprecated.
Will be removed in Tomcat 12
`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`
`setStoreWriterClass(String storeWriterClass)`
Deprecated.
Will be removed in Tomcat 12
`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.
`void`
`setTransientAttributes(List<String> transientAttributes)`
Deprecated.
Will be removed in Tomcat 12
`void`
`setTransientChildren(List<String> transientChildren)`
Deprecated.
Will be removed in Tomcat 12

### 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

### getStoreWriterClass

@Deprecated public String getStoreWriterClass()
Deprecated.
Will be removed in Tomcat 12
Returns the fully qualified class name of the StoreWriter implementation.

Returns:
  the StoreWriter class name

### setStoreWriterClass

@Deprecated public void setStoreWriterClass(String storeWriterClass)
Deprecated.
Will be removed in Tomcat 12
Sets the fully qualified class name of the StoreWriter implementation.

Parameters:
  `storeWriterClass` - the StoreWriter class name

### 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

### getTransientAttributes

@Deprecated public List<String> getTransientAttributes()
Deprecated.
Will be removed in Tomcat 12
Returns the list of attribute names that should not be persisted.

Returns:
  the list of transient attribute names

### setTransientAttributes

@Deprecated public void setTransientAttributes(List<String> transientAttributes)
Deprecated.
Will be removed in Tomcat 12
Sets the list of attribute names that should not be persisted.

Parameters:
  `transientAttributes` - the list of transient attribute names

### 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

### getTransientChildren

@Deprecated public List<String> getTransientChildren()
Deprecated.
Will be removed in Tomcat 12
Returns the list of child class names that should not be persisted.

Returns:
  the list of transient child class names

### setTransientChildren

@Deprecated public void setTransientChildren(List<String> transientChildren)
Deprecated.
Will be removed in Tomcat 12
Sets the list of child class names that should not be persisted.

Parameters:
  `transientChildren` - the list of transient child class names

### 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