Package org.eclipse.jetty.util.resource
Class PathResource
- java.lang.Object
-
- org.eclipse.jetty.util.resource.Resource
-
- org.eclipse.jetty.util.resource.PathResource
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,ResourceFactory
public class PathResource extends Resource
Java NIO Path equivalent of FileResource.
-
-
Field Summary
-
Fields inherited from class org.eclipse.jetty.util.resource.Resource
__defaultUseCaches
-
-
Constructor Summary
Constructors Constructor Description PathResource(java.io.File file)Construct a new PathResource from a File object.PathResource(java.net.URI uri)Construct a new PathResource from a URI object.PathResource(java.net.URL url)Create a new PathResource from a provided URL object.PathResource(java.nio.file.Path path)Construct a new PathResource from a Path object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ResourceaddPath(java.lang.String subpath)Returns the resource contained inside the current resource with the given name.voidclose()Release any temporary resources held by the resource.voidcopyTo(java.io.File destination)Copy the Resource to the new destination file.booleandelete()Deletes the given resourcebooleanequals(java.lang.Object obj)booleanexists()java.net.URIgetAlias()java.nio.file.PathgetAliasPath()The Alias as a Path.java.io.FilegetFile()File representing the given resource.java.io.InputStreamgetInputStream()Input stream to the resourcejava.lang.StringgetName()The name of the resource.java.nio.file.PathgetPath()java.nio.channels.ReadableByteChannelgetReadableByteChannel()Readable ByteChannel for the resource.java.net.URIgetURI()URI representing the resource.java.net.URLgetURL()URL representing the resource.inthashCode()booleanisAlias()booleanisContainedIn(Resource r)booleanisDirectory()longlastModified()Time resource was last modified.longlength()Length of the resource.java.lang.String[]list()list of resource names contained in the given resource.booleanrenameTo(Resource dest)Rename the given resourcejava.lang.StringtoString()-
Methods inherited from class org.eclipse.jetty.util.resource.Resource
encode, finalize, getAllResources, getAssociate, getDefaultUseCaches, getListHTML, getListHTML, getResource, getWeakETag, getWeakETag, isContainedIn, newClassPathResource, newClassPathResource, newResource, newResource, newResource, newResource, newResource, newResource, newSystemResource, release, setAssociate, setDefaultUseCaches, toURL, writeTo
-
-
-
-
Constructor Detail
-
PathResource
public PathResource(java.io.File file)
Construct a new PathResource from a File object.An invocation of this convenience constructor of the form.
new PathResource(file);
behaves in exactly the same way as the expression
new PathResource(file.toPath());
- Parameters:
file- the file to use
-
PathResource
public PathResource(java.nio.file.Path path)
Construct a new PathResource from a Path object.- Parameters:
path- the path to use
-
PathResource
public PathResource(java.net.URI uri) throws java.io.IOExceptionConstruct a new PathResource from a URI object.Must be an absolute URI using the
filescheme.- Parameters:
uri- the URI to build this PathResource from.- Throws:
java.io.IOException- if unable to construct the PathResource from the URI.
-
PathResource
public PathResource(java.net.URL url) throws java.io.IOException, java.net.URISyntaxExceptionCreate a new PathResource from a provided URL object.An invocation of this convenience constructor of the form.
new PathResource(url);
behaves in exactly the same way as the expression
new PathResource(url.toURI());
- Parameters:
url- the url to attempt to create PathResource from- Throws:
java.io.IOException- if URL doesn't point to a location that can be transformed to a PathResourcejava.net.URISyntaxException- if the provided URL was malformed
-
-
Method Detail
-
addPath
public Resource addPath(java.lang.String subpath) throws java.io.IOException
Description copied from class:ResourceReturns the resource contained inside the current resource with the given name.- Specified by:
addPathin classResource- Parameters:
subpath- The path segment to add, which is not encoded- Returns:
- the Resource for the resolved path within this Resource.
- Throws:
java.io.IOException- if unable to resolve the pathjava.net.MalformedURLException- if the resolution of the path fails because the input path parameter is malformed.
-
close
public void close()
Description copied from class:ResourceRelease any temporary resources held by the resource.
-
delete
public boolean delete() throws java.lang.SecurityExceptionDescription copied from class:ResourceDeletes the given resource
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
exists
public boolean exists()
-
getFile
public java.io.File getFile() throws java.io.IOExceptionDescription copied from class:ResourceFile representing the given resource.
-
getPath
public java.nio.file.Path getPath()
- Returns:
- the
Pathof the resource
-
getInputStream
public java.io.InputStream getInputStream() throws java.io.IOExceptionDescription copied from class:ResourceInput stream to the resource- Specified by:
getInputStreamin classResource- Returns:
- an input stream to the resource
- Throws:
java.io.IOException- if unable to open the input stream
-
getName
public java.lang.String getName()
Description copied from class:ResourceThe name of the resource.
-
getReadableByteChannel
public java.nio.channels.ReadableByteChannel getReadableByteChannel() throws java.io.IOExceptionDescription copied from class:ResourceReadable ByteChannel for the resource.- Specified by:
getReadableByteChannelin classResource- Returns:
- an readable bytechannel to the resource or null if one is not available.
- Throws:
java.io.IOException- if unable to open the readable bytechannel for the resource.
-
getURI
public java.net.URI getURI()
Description copied from class:ResourceURI representing the resource.
-
getURL
public java.net.URL getURL()
Description copied from class:ResourceURL representing the resource.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
isContainedIn
public boolean isContainedIn(Resource r) throws java.net.MalformedURLException
- Specified by:
isContainedInin classResource- Throws:
java.net.MalformedURLException
-
isDirectory
public boolean isDirectory()
- Specified by:
isDirectoryin classResource- Returns:
- true if the represented resource is a container/directory. if the resource is not a file, resources ending with "/" are considered directories.
-
lastModified
public long lastModified()
Description copied from class:ResourceTime resource was last modified.- Specified by:
lastModifiedin classResource- Returns:
- the last modified time as milliseconds since unix epoch
-
length
public long length()
Description copied from class:ResourceLength of the resource.
-
isAlias
public boolean isAlias()
-
getAliasPath
public java.nio.file.Path getAliasPath()
The Alias as a Path.Note: this cannot return the alias as a DIFFERENT path in 100% of situations, due to Java's internal Path/File normalization.
- Returns:
- the alias as a path.
-
getAlias
public java.net.URI getAlias()
-
list
public java.lang.String[] list()
Description copied from class:Resourcelist of resource names contained in the given resource. Ordering is unspecified, so callers may wish to sort the return value to ensure deterministic behavior.
-
renameTo
public boolean renameTo(Resource dest) throws java.lang.SecurityException
Description copied from class:ResourceRename the given resource
-
copyTo
public void copyTo(java.io.File destination) throws java.io.IOExceptionDescription copied from class:ResourceCopy the Resource to the new destination file.Will not replace existing destination file.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-