public class EmptyResourceSet extends LifecycleBase implements WebResourceSet
WebResourceSet
implementation that is not backed by a file system
and behaves as if it has no resources available. This is primarily used in
embedded mode when the web application is configured entirely
programmatically and does not use any static resources from the file system.Lifecycle.SingleUse
AFTER_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 |
---|
EmptyResourceSet(WebResourceRoot root) |
Modifier and Type | Method and Description |
---|---|
protected void |
destroyInternal() |
void |
gc()
Implementations may cache some information to improve performance.
|
java.net.URL |
getBaseUrl()
Obtain the base URL for this set of resources.
|
boolean |
getClassLoaderOnly()
Should resources returned by this resource set only be included in any
results when the lookup is explicitly looking for class loader resources.
|
WebResource |
getResource(java.lang.String path)
Obtain the object that represents the resource at the given path.
|
boolean |
getStaticOnly()
Should resources returned by this resource set only be included in any
results when the lookup is explicitly looking for static (non-class
loader) resources. i.e. should these resources be excluded from look ups
that are explicitly looking for class loader resources.
|
protected void |
initInternal() |
boolean |
isReadOnly()
Obtains the current value of the read-only setting for this set of
resources.
|
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.
|
boolean |
mkdir(java.lang.String path)
Create a new directory at the given path.
|
void |
setClassLoaderOnly(boolean classLoaderOnly) |
void |
setReadOnly(boolean readOnly)
Configures whether or not this set of resources is read-only.
|
void |
setRoot(WebResourceRoot root) |
void |
setStaticOnly(boolean staticOnly) |
protected void |
startInternal()
Sub-classes must ensure that the state is changed to
LifecycleState.STARTING during the execution of this method. |
protected void |
stopInternal()
Sub-classes must ensure that the state is changed to
LifecycleState.STOPPING during the execution of this method. |
boolean |
write(java.lang.String path,
java.io.InputStream is,
boolean overwrite)
Create a new resource at the requested path using the provided
InputStream.
|
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, setState, start, stop
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
public EmptyResourceSet(WebResourceRoot root)
public WebResource getResource(java.lang.String path)
This implementation always returns an EmptyResource
.
getResource
in interface WebResourceSet
path
- 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)
This implementation always returns an empty array.
list
in interface WebResourceSet
path
- 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)
This implementation always returns an empty set.
listWebAppPaths
in interface WebResourceSet
path
- 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)
This implementation always returns false.
mkdir
in interface WebResourceSet
path
- 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
false
public boolean write(java.lang.String path, java.io.InputStream is, boolean overwrite)
This implementation always returns false.
write
in interface WebResourceSet
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 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 void setRoot(WebResourceRoot root)
setRoot
in interface WebResourceSet
public boolean getClassLoaderOnly()
WebResourceSet
getClassLoaderOnly
in interface WebResourceSet
true
if these resources should only be used for
class loader resource lookups, otherwise false
public void setClassLoaderOnly(boolean classLoaderOnly)
setClassLoaderOnly
in interface WebResourceSet
public boolean getStaticOnly()
WebResourceSet
getStaticOnly
in interface WebResourceSet
true
if these resources should only be used for
static (non-class loader) resource lookups, otherwise
false
public void setStaticOnly(boolean staticOnly)
setStaticOnly
in interface WebResourceSet
public java.net.URL getBaseUrl()
This implementation always returns null.
getBaseUrl
in interface WebResourceSet
public void setReadOnly(boolean readOnly)
Calls to this method will be ignored as this implementation always read only.
setReadOnly
in interface WebResourceSet
readOnly
- true
if this set of resources should be
configured to be read-onlypublic boolean isReadOnly()
This implementation always returns true.
isReadOnly
in interface WebResourceSet
true
if this set of resources is configured to be
read-only, otherwise false
public void gc()
WebResourceSet
gc
in interface WebResourceSet
protected void initInternal() throws LifecycleException
initInternal
in class LifecycleBase
LifecycleException
protected void startInternal() throws LifecycleException
LifecycleBase
LifecycleState.STARTING
during the execution of this method.
Changing state will trigger the Lifecycle.START_EVENT
event.
If a component fails to start it may either throw a
LifecycleException
which will cause it's parent to fail to start
or it can place itself in the error state in which case LifecycleBase.stop()
will be called on the failed component but the parent component will
continue to start normally.startInternal
in class LifecycleBase
LifecycleException
protected void stopInternal() throws LifecycleException
LifecycleBase
LifecycleState.STOPPING
during the execution of this method.
Changing state will trigger the Lifecycle.STOP_EVENT
event.stopInternal
in class LifecycleBase
LifecycleException
protected void destroyInternal() throws LifecycleException
destroyInternal
in class LifecycleBase
LifecycleException
Copyright © 2000-2018 Apache Software Foundation. All Rights Reserved.