Interface for a resource descriptor that abstracts from the actual type of underlying resource, such as a file or class path resource.
An InputStream can be opened for every resource if it exists in physical form, but a URL or File handle can just be returned for certain resources. The actual behavior is implementation-specific.
Type | Name and description |
---|---|
long |
contentLength() Determine the content length for this resource. |
Resource |
createRelative(java.lang.String relativePath) Creates a new resource relative to this one |
boolean |
exists() Return whether this resource actually exists in physical form. |
java.lang.String |
getDescription() Return a description for this resource, to be used for error output when working with the resource. |
java.io.File |
getFile() Return a File handle for this resource. |
java.lang.String |
getFilename() Determine a filename for this resource, i.e. typically the last part of the path: for example, "myfile.txt". |
java.io.InputStream |
getInputStream() An input stream |
java.net.URI |
getURI() Return a URI handle for this resource. |
java.net.URL |
getURL() Return a URL handle for this resource. |
boolean |
isReadable() Return whether the contents of this resource can be read, e.g. via getInputStream() or getFile(). |
long |
lastModified() Determine the last-modified timestamp for this resource. |
Determine the content length for this resource.
Creates a new resource relative to this one
relativePath
- The relative pathReturn whether this resource actually exists in physical form.
This method performs a definitive existence check, whereas the
existence of a Resource
handle only guarantees a
valid descriptor handle.
Return a description for this resource, to be used for error output when working with the resource.
Implementations are also encouraged to return this value
from their toString
method.
Return a File handle for this resource.
Determine a filename for this resource, i.e. typically the last part of the path: for example, "myfile.txt".
Returns null
if this type of resource does not
have a filename.
An input stream
Return a URI handle for this resource.
Return a URL handle for this resource.
Return whether the contents of this resource can be read, e.g. via getInputStream() or getFile().
Will be true
for typical resource descriptors;
note that actual content reading may still fail when attempted.
However, a value of false
is a definitive indication
that the resource content cannot be read.
Determine the last-modified timestamp for this resource.