Package org.eclipse.jetty.util.resource
Class ResourceCollection
java.lang.Object
org.eclipse.jetty.util.resource.Resource
org.eclipse.jetty.util.resource.ResourceCollection
- All Implemented Interfaces:
Closeable
,AutoCloseable
,ResourceFactory
A collection of resources (dirs).
Allows webapps to have multiple (static) sources.
The first resource in the collection is the main resource.
If a resource is not found in the main resource, it looks it up in
the order the resources were constructed.
-
Field Summary
Fields inherited from class org.eclipse.jetty.util.resource.Resource
__defaultUseCaches
-
Constructor Summary
ConstructorDescriptionInstantiates an empty resource collection.ResourceCollection
(String csvResources) Instantiates a new resource collection.ResourceCollection
(String[] resources) Instantiates a new resource collection.ResourceCollection
(Collection<Resource> resources) Instantiates a new resource collection.ResourceCollection
(Resource... resources) Instantiates a new resource collection. -
Method Summary
Modifier and TypeMethodDescriptionAdd a path to the resource collection.void
close()
Release any temporary resources held by the resource.void
Copy the Resource to the new destination file.boolean
delete()
Deletes the given resourceboolean
exists()
getFile()
File representing the given resource.Input stream to the resourcegetName()
The name of the resource.Readable ByteChannel for the resource.Retrieves the resource collection's resources.getURI()
URI representing the resource.boolean
boolean
long
Time resource was last modified.long
length()
Length of the resource.String[]
list()
list of resource names contained in the given resource.boolean
Rename the given resourcevoid
setResources
(String resources) Sets the resources as string of comma-separated values.void
setResources
(List<Resource> res) Sets the resource collection's resources.void
setResources
(Resource[] resources) Sets the resource collection's resources.toString()
Methods inherited from class org.eclipse.jetty.util.resource.Resource
fromList, fromList, getAlias, getAllResources, getAssociate, getDefaultUseCaches, getListHTML, getResource, getWeakETag, getWeakETag, isAlias, isContainedIn, isSame, newClassPathResource, newClassPathResource, newResource, newResource, newResource, newResource, newResource, newResource, newSystemResource, resolveAlias, setAssociate, setDefaultUseCaches, toURL
-
Constructor Details
-
ResourceCollection
public ResourceCollection()Instantiates an empty resource collection.This constructor is used when configuring jetty-maven-plugin.
-
ResourceCollection
Instantiates a new resource collection.- Parameters:
resources
- the resources to be added to collection
-
ResourceCollection
Instantiates a new resource collection.- Parameters:
resources
- the resources to be added to collection
-
ResourceCollection
Instantiates a new resource collection.- Parameters:
resources
- the resource strings to be added to collection
-
ResourceCollection
Instantiates a new resource collection.- Parameters:
csvResources
- the string containing comma-separated resource strings- Throws:
IOException
- if any listed resource is not valid
-
-
Method Details
-
getResources
Retrieves the resource collection's resources.- Returns:
- the resource collection
-
setResources
Sets the resource collection's resources.- Parameters:
res
- the resources to set
-
setResources
Sets the resource collection's resources.- Parameters:
resources
- the new resource array
-
setResources
Sets the resources as string of comma-separated values. This method should be used when configuring jetty-maven-plugin.- Parameters:
resources
- the comma-separated string containing one or more resource strings.- Throws:
IOException
- if unable resource declared is not valid- See Also:
-
addPath
Add a path to the resource collection.- Specified by:
addPath
in classResource
- Parameters:
path
- The path segment to add- Returns:
- The resulting resource(s) :
- is a file that exists in at least one of the collection, then the first one found is returned
- is a directory that exists in at exactly one of the collection, then that directory resource is returned
- is a directory that exists in several of the collection, then a ResourceCollection of those directories is returned
- do not exist in any of the collection, then a new non existent resource relative to the first in the collection is returned.
- Throws:
MalformedURLException
- if the resolution of the path fails because the input path parameter is malformed against any of the collectionIOException
- if unable to resolve the path
-
delete
Description copied from class:Resource
Deletes the given resource- Specified by:
delete
in classResource
- Returns:
- true if resource was found and successfully deleted, false if resource didn't exist or was unable to be deleted.
- Throws:
SecurityException
- if unable to delete due to permissions
-
exists
public boolean exists() -
getFile
Description copied from class:Resource
File representing the given resource.- Specified by:
getFile
in classResource
- Returns:
- an File representing the given resource or NULL if this is not possible.
- Throws:
IOException
- if unable to get the resource due to permissions
-
getInputStream
Description copied from class:Resource
Input stream to the resource- Specified by:
getInputStream
in classResource
- Returns:
- an input stream to the resource
- Throws:
IOException
- if unable to open the input stream
-
getReadableByteChannel
Description copied from class:Resource
Readable ByteChannel for the resource.- Specified by:
getReadableByteChannel
in classResource
- Returns:
- an readable bytechannel to the resource or null if one is not available.
- Throws:
IOException
- if unable to open the readable bytechannel for the resource.
-
getName
Description copied from class:Resource
The name of the resource. -
getURI
Description copied from class:Resource
URI representing the resource. -
isDirectory
public boolean isDirectory()- Specified by:
isDirectory
in classResource
- Returns:
- true if the represented resource is a container/directory.
-
lastModified
public long lastModified()Description copied from class:Resource
Time resource was last modified.- Specified by:
lastModified
in classResource
- Returns:
- the last modified time as milliseconds since unix epoch
-
length
public long length()Description copied from class:Resource
Length of the resource. -
list
Description copied from class:Resource
list of resource names contained in the given resource. Ordering is unspecified, so callers may wish to sort the return value to ensure deterministic behavior. -
close
public void close()Description copied from class:Resource
Release any temporary resources held by the resource. -
renameTo
Description copied from class:Resource
Rename the given resource- Specified by:
renameTo
in classResource
- Parameters:
dest
- the destination name for the resource- Returns:
- true if the resource was renamed, false if the resource didn't exist or was unable to be renamed.
- Throws:
SecurityException
- if unable to rename due to permissions
-
copyTo
Description copied from class:Resource
Copy the Resource to the new destination file.Will not replace existing destination file.
- Overrides:
copyTo
in classResource
- Parameters:
destination
- the destination file to create- Throws:
IOException
- if unable to copy the resource
-
toString
-
isContainedIn
- Specified by:
isContainedIn
in classResource
-