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.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() |
URL |
getBaseUrl()
Obtain the base URL for this set of resources.
|
boolean |
getClassLoaderOnly()
Are resources provided by this resource set only intended for use by
calls to
WebResourceRoot.getClassLoaderResource(String) . |
WebResource |
getResource(String path)
Obtain the object that represents the resource at the given path.
|
protected void |
initInternal() |
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.
|
void |
setClassLoaderOnly(boolean classLoaderOnly) |
void |
setReadOnly(boolean readOnly)
Configures whether or not this set of resources is read-only.
|
void |
setRoot(WebResourceRoot root) |
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(String path,
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(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 String[] list(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 Set<String> listWebAppPaths(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(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(String path, 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
WebResourceRoot.getClassLoaderResource(String)
.getClassLoaderOnly
in interface WebResourceSet
true
if these resources should only be used for
calls to WebResourceRoot.getClassLoaderResource(String)
,
otherwise false
public void setClassLoaderOnly(boolean classLoaderOnly)
setClassLoaderOnly
in interface WebResourceSet
public 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
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-2014 Apache Software Foundation. All Rights Reserved.