public interface 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.
Modifier and Type | Method and Description |
---|---|
long |
contentLength()
Determine the content length for this resource.
|
Resource |
createRelative(String relativePath)
Creates a new resource relative to this one.
|
boolean |
exists()
Return whether this resource actually exists in physical form.
|
String |
getDescription()
Return a description for this resource, to be used for error output when working with the resource.
|
File |
getFile() |
String |
getFilename()
Determine a filename for this resource, i.e.
|
InputStream |
getInputStream()
An input stream.
|
URI |
getURI() |
URL |
getURL() |
boolean |
isReadable()
Return whether the contents of this resource can be read,
e.g.
|
long |
lastModified()
Determine the last-modified timestamp for this resource.
|
InputStream getInputStream() throws IOException
IOException
- if there is an errorboolean exists()
This method performs a definitive existence check, whereas the
existence of a Resource
handle only guarantees a
valid descriptor handle.
boolean isReadable()
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.
getInputStream()
URL getURL() throws IOException
IOException
- if the resource cannot be resolved as URL,
i.e. if the resource is not available as descriptorURI getURI() throws IOException
IOException
- if the resource cannot be resolved as URI,
i.e. if the resource is not available as descriptorFile getFile() throws IOException
IOException
- if the resource cannot be resolved as absolute
file path, i.e. if the resource is not available in a file systemlong contentLength() throws IOException
IOException
- if the resource cannot be resolved
(in the file system or as some other known physical resource type)long lastModified() throws IOException
IOException
- if the resource cannot be resolved
(in the file system or as some other known physical resource type)String getFilename()
Returns null
if this type of resource does not have a filename.
String getDescription()
Implementations are also encouraged to return this value
from their toString
method.
Object.toString()