Package org.apache.catalina.webresources
Class AbstractArchiveResourceSet
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.webresources.AbstractResourceSet
org.apache.catalina.webresources.AbstractArchiveResourceSet
- All Implemented Interfaces:
- Lifecycle,- WebResourceSet
- Direct Known Subclasses:
- AbstractSingleArchiveResourceSet,- JarWarResourceSet
- 
Nested Class SummaryNested classes/interfaces inherited from interface org.apache.catalina.LifecycleLifecycle.SingleUse
- 
Field SummaryFieldsFields inherited from class org.apache.catalina.webresources.AbstractResourceSetsmFields inherited from interface org.apache.catalina.LifecycleAFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidprotected abstract WebResourcecreateArchiveResource(JarEntry jarEntry, String webAppPath, Manifest manifest) voidgc()Implementations may cache some information to improve performance.getArchiveEntries(boolean single) Obtain the map of entries in the archive.protected abstract JarEntrygetArchiveEntry(String pathInArchive) Obtain a single entry from the archive.final URLObtain the base URL for this set of resources.protected final Stringfinal WebResourcegetResource(String path) Obtain the object that represents the resource at the given path.protected abstract booleanfinal booleanObtains the current value of the read-only setting for this set of resources.final String[]Obtain the list of the names of all of the files and directories located in the specified directory.listWebAppPaths(String path) Obtain the Set of the web applications pathnames of all of the files and directories located in the specified directory.final booleanCreate a new directory at the given path.protected JarFileprotected final voidsetBaseUrl(URL baseUrl) voidsetReadOnly(boolean readOnly) Configures whether or not this set of resources is read-only.final booleanwrite(String path, InputStream is, boolean overwrite) Create a new resource at the requested path using the provided InputStream.Methods inherited from class org.apache.catalina.webresources.AbstractResourceSetcheckPath, destroyInternal, getBase, getClassLoaderOnly, getInternalPath, getManifest, getRoot, getStaticOnly, getWebAppMount, setBase, setClassLoaderOnly, setInternalPath, setManifest, setRoot, setStaticOnly, setWebAppMount, startInternal, stopInternalMethods inherited from class org.apache.catalina.util.LifecycleBaseaddLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, initInternal, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stopMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.catalina.LifecycleaddLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
- 
Field Details- 
archiveEntries
- 
archiveLock
 
- 
- 
Constructor Details- 
AbstractArchiveResourceSetpublic AbstractArchiveResourceSet()
 
- 
- 
Method Details- 
setBaseUrl
- 
getBaseUrlDescription copied from interface:WebResourceSetObtain the base URL for this set of resources. One of the uses of this is to grant read permissions to the resources when running under a security manager.- Returns:
- The base URL for this set of resources
 
- 
getBaseUrlString
- 
listDescription copied from interface:WebResourceSetObtain the list of the names of all of the files and directories located in the specified directory.- Parameters:
- path- The path for the resource of interest relative to the root of the web application. It must start with '/'.
- Returns:
- The list of resources. If path does not refer to a directory then a zero length array will be returned.
 
- 
listWebAppPathsDescription copied from interface:WebResourceSetObtain the Set of the web applications pathnames of all of the files and directories located in the specified directory. Paths representing directories will end with a "/" character.- Parameters:
- path- The path for the resource of interest relative to the root of the web application. It must start with '/'.
- Returns:
- The Set of resources. If path does not refer to a directory then an empty set will be returned.
 
- 
getArchiveEntriesObtain the map of entries in the archive. May return null in which casegetArchiveEntry(String)should be used.- Parameters:
- single- Is this request being make to support a single lookup? If false, a map will always be returned. If true, implementations may use this as a hint in determining the optimum way to respond.
- Returns:
- The archives entries mapped to their names or null if getArchiveEntry(String)should be used.
 
- 
getArchiveEntryObtain a single entry from the archive. For performance reasons,getArchiveEntries(boolean)should always be called first and the archive entry looked up in the map if one is returned. Only if that call returns null should this method be used.- Parameters:
- pathInArchive- The path in the archive of the entry required
- Returns:
- The specified archive entry or null if it does not exist
 
- 
mkdirDescription copied from interface:WebResourceSetCreate a new directory at the given path.- Parameters:
- path- The path for the new resource to create relative to the root of the web application. It must start with '/'.
- Returns:
- trueif the directory was created, otherwise- false
 
- 
writeDescription copied from interface:WebResourceSetCreate a new resource at the requested path using the provided InputStream.- Parameters:
- path- The path to be used for the new Resource. It is relative to the root of the web application and must start with '/'.
- is- The InputStream that will provide the content for the new Resource.
- overwrite- If- trueand the resource already exists it will be overwritten. If- falseand the resource already exists the write will fail.
- Returns:
- trueif and only if the new Resource is written
 
- 
getResourceDescription copied from interface:WebResourceSetObtain the object that represents the resource at the given path. Note the resource at that path may not exist.- Parameters:
- path- The path for the resource of interest relative to the root of the web application. It must start with '/'.
- Returns:
- The object that represents the resource at the given path
 
- 
isMultiReleaseprotected abstract boolean isMultiRelease()
- 
createArchiveResourceprotected abstract WebResource createArchiveResource(JarEntry jarEntry, String webAppPath, Manifest manifest) 
- 
isReadOnlypublic final boolean isReadOnly()Description copied from interface:WebResourceSetObtains the current value of the read-only setting for this set of resources.- Returns:
- trueif this set of resources is configured to be read-only, otherwise- false
 
- 
setReadOnlypublic void setReadOnly(boolean readOnly) Description copied from interface:WebResourceSetConfigures whether or not this set of resources is read-only.- Parameters:
- readOnly-- trueif this set of resources should be configured to be read-only
 
- 
openJarFile- Throws:
- IOException
 
- 
closeJarFileprotected void closeJarFile()
- 
gcpublic void gc()Description copied from interface:WebResourceSetImplementations may cache some information to improve performance. This method triggers the clean-up of those resources.
 
-