public abstract class AbstractArchiveResourceSet extends AbstractResourceSet
Lifecycle.SingleUse| Modifier and Type | Field and Description |
|---|---|
protected HashMap<String,JarEntry> |
archiveEntries |
protected Object |
archiveLock |
smAFTER_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 and Description |
|---|
AbstractArchiveResourceSet() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
closeJarFile() |
protected abstract WebResource |
createArchiveResource(JarEntry jarEntry,
String webAppPath,
Manifest manifest) |
void |
gc()
Implementations may cache some information to improve performance.
|
protected abstract HashMap<String,JarEntry> |
getArchiveEntries(boolean single)
Obtain the map of entries in the archive.
|
protected abstract JarEntry |
getArchiveEntry(String pathInArchive)
Obtain a single entry from the archive.
|
URL |
getBaseUrl()
Obtain the base URL for this set of resources.
|
protected String |
getBaseUrlString() |
WebResource |
getResource(String path)
Obtain the object that represents the resource at the given path.
|
boolean |
isReadOnly()
Obtains the current value of the read-only setting for this set of
resources.
|
String[] |
list(String path)
Obtain the list of the names of all of the files and directories located
in the specified directory.
|
Set<String> |
listWebAppPaths(String path)
Obtain the Set of the web applications pathnames of all of the files and
directories located in the specified directory.
|
boolean |
mkdir(String path)
Create a new directory at the given path.
|
protected JarFile |
openJarFile() |
protected void |
setBaseUrl(URL baseUrl) |
void |
setReadOnly(boolean readOnly)
Configures whether or not this set of resources is read-only.
|
boolean |
write(String path,
InputStream is,
boolean overwrite)
Create a new resource at the requested path using the provided
InputStream.
|
checkPath, destroyInternal, getBase, getClassLoaderOnly, getInternalPath, getManifest, getRoot, getStaticOnly, getWebAppMount, setBase, setClassLoaderOnly, setInternalPath, setManifest, setRoot, setStaticOnly, setWebAppMount, startInternal, stopInternaladdLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, initInternal, removeLifecycleListener, setState, setState, start, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stopprotected final Object archiveLock
protected final void setBaseUrl(URL baseUrl)
public final URL getBaseUrl()
WebResourceSetprotected final String getBaseUrlString()
public final String[] list(String path)
WebResourceSetpath - The path for the resource of interest relative to the root
of the web application. It must start with '/'.public final Set<String> listWebAppPaths(String path)
WebResourceSetpath - The path for the resource of interest relative to the root
of the web application. It must start with '/'.protected abstract HashMap<String,JarEntry> getArchiveEntries(boolean single)
getArchiveEntry(String) should be used.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.getArchiveEntry(String) should be used.protected abstract JarEntry getArchiveEntry(String pathInArchive)
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.pathInArchive - The path in the archive of the entry requiredpublic final boolean mkdir(String path)
WebResourceSetpath - The path for the new resource to create relative to the root
of the web application. It must start with '/'.true if the directory was created, otherwise
falsepublic final boolean write(String path, InputStream is, boolean overwrite)
WebResourceSetpath - 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 true and the resource already exists it
will be overwritten. If false and the
resource already exists the write will fail.true if and only if the new Resource is writtenpublic final WebResource getResource(String path)
WebResourceSetpath - The path for the resource of interest relative to the root
of the web application. It must start with '/'.protected abstract WebResource createArchiveResource(JarEntry jarEntry, String webAppPath, Manifest manifest)
public final boolean isReadOnly()
WebResourceSettrue if this set of resources is configured to be
read-only, otherwise falsepublic void setReadOnly(boolean readOnly)
WebResourceSetreadOnly - true if this set of resources should be
configured to be read-onlyprotected JarFile openJarFile() throws IOException
IOExceptionprotected void closeJarFile()
public void gc()
WebResourceSetCopyright © 2000-2016 Apache Software Foundation. All Rights Reserved.