public class DirResourceSet extends AbstractFileResourceSet implements WebResourceLockSet
WebResourceSet based on a directory.WebResourceLockSet.ResourceLockLifecycle.SingleUseEMPTY_STRING_ARRAYsmAFTER_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 |
|---|
DirResourceSet()
A no argument constructor is required for this to work with the digester.
|
DirResourceSet(WebResourceRoot root,
java.lang.String webAppMount,
java.lang.String base,
java.lang.String internalPath)
Creates a new
WebResourceSet based on a directory. |
| Modifier and Type | Method and Description |
|---|---|
protected void |
checkType(java.io.File file) |
WebResource |
getResource(java.lang.String path)
Obtain the object that represents the resource at the given path.
|
protected void |
initInternal()
Sub-classes implement this method to perform any instance initialisation
required.
|
java.lang.String[] |
list(java.lang.String path)
Obtain the list of the names of all of the files and directories located
in the specified directory.
|
java.util.Set<java.lang.String> |
listWebAppPaths(java.lang.String path)
Obtain the Set of the web applications pathnames of all of the files and
directories located in the specified directory.
|
WebResourceLockSet.ResourceLock |
lockForRead(java.lang.String path)
Lock the resource at the provided path for reading.
|
WebResourceLockSet.ResourceLock |
lockForWrite(java.lang.String path)
Lock the resource at the provided path for writing.
|
boolean |
mkdir(java.lang.String path)
Create a new directory at the given path.
|
void |
unlockForRead(WebResourceLockSet.ResourceLock resourceLock)
Release a read lock from the resource associated with the given
WebResourceLockSet.ResourceLock. |
void |
unlockForWrite(WebResourceLockSet.ResourceLock resourceLock)
Release the write lock from the resource associated with the given
WebResourceLockSet.ResourceLock. |
boolean |
write(java.lang.String path,
java.io.InputStream is,
boolean overwrite)
Create a new resource at the requested path using the provided
InputStream.
|
file, gc, getBaseUrl, getFileBase, isReadOnly, logIgnoredSymlink, setReadOnlycheckPath, destroyInternal, getBase, getClassLoaderOnly, getInternalPath, getManifest, getRoot, getStaticOnly, getWebAppMount, isPathMounted, setBase, setClassLoaderOnly, setInternalPath, setManifest, setRoot, setStaticOnly, setWebAppMount, startInternal, stopInternaladdLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stoppublic DirResourceSet()
public DirResourceSet(WebResourceRoot root, java.lang.String webAppMount, java.lang.String base, java.lang.String internalPath)
WebResourceSet based on a directory.root - The WebResourceRoot this new WebResourceSet will be added
to.webAppMount - The path within the web application at which this WebResourceSet
will be mounted. For example, to add a directory of JARs to a web application, the
directory would be mounted at "/WEB-INF/lib/"base - The absolute path to the directory on the file system from which the resources will be
served.internalPath - The path within this new WebResourceSet where resources will be
served from.public WebResource getResource(java.lang.String path)
WebResourceSetgetResource in interface WebResourceSetpath - The path for the resource of interest relative to the root
of the web application. It must start with '/'.public java.lang.String[] list(java.lang.String path)
WebResourceSetlist in interface WebResourceSetpath - The path for the resource of interest relative to the root
of the web application. It must start with '/'.public java.util.Set<java.lang.String> listWebAppPaths(java.lang.String path)
WebResourceSetlistWebAppPaths in interface WebResourceSetpath - The path for the resource of interest relative to the root
of the web application. It must start with '/'.public boolean mkdir(java.lang.String path)
WebResourceSetmkdir in interface 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 boolean write(java.lang.String path,
java.io.InputStream is,
boolean overwrite)
WebResourceSetwrite in interface 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 writtenprotected void checkType(java.io.File file)
checkType in class AbstractFileResourceSetprotected void initInternal()
throws LifecycleException
LifecycleBaseinitInternal in class AbstractFileResourceSetLifecycleException - If the initialisation failspublic WebResourceLockSet.ResourceLock lockForRead(java.lang.String path)
WebResourceLockSetlockForRead in interface WebResourceLockSetpath - The path to the resource to be locked for readingWebResourceLockSet.ResourceLock that must be passed to WebResourceLockSet.unlockForRead(ResourceLock) to release the lockpublic void unlockForRead(WebResourceLockSet.ResourceLock resourceLock)
WebResourceLockSetWebResourceLockSet.ResourceLock.unlockForRead in interface WebResourceLockSetresourceLock - The WebResourceLockSet.ResourceLock associated with the resource for which a read lock should be
releasedpublic WebResourceLockSet.ResourceLock lockForWrite(java.lang.String path)
WebResourceLockSetlockForWrite in interface WebResourceLockSetpath - The path to the resource to be locked for writingWebResourceLockSet.ResourceLock that must be passed to WebResourceLockSet.unlockForWrite(ResourceLock) to release the lockpublic void unlockForWrite(WebResourceLockSet.ResourceLock resourceLock)
WebResourceLockSetWebResourceLockSet.ResourceLock.unlockForWrite in interface WebResourceLockSetresourceLock - The WebResourceLockSet.ResourceLock associated with the resource for which the write lock should be
releasedCopyright © 2000-2024 Apache Software Foundation.
Apache Tomcat, Tomcat, Apache, the Apache Tomcat logo and the Apache logo are either registered trademarks or trademarks of the Apache Software Foundation.