public abstract class AbstractResource extends java.lang.Object implements Resource
Resource implementations,
pre-implementing typical behavior.
The "exists" method will check whether a File or InputStream can be opened; "isOpen" will always return false; "getURL" and "getFile" throw an exception; and "toString" will return the description.
| Constructor and Description |
|---|
AbstractResource() |
| Modifier and Type | Method and Description |
|---|---|
long |
contentLength()
This implementation reads the entire InputStream to calculate the
content length.
|
Resource |
createRelative(java.lang.String relativePath)
This implementation throws a FileNotFoundException, assuming
that relative resources cannot be created for this resource.
|
boolean |
equals(java.lang.Object obj)
This implementation compares description strings.
|
boolean |
exists()
This implementation checks whether a File can be opened,
falling back to whether an InputStream can be opened.
|
java.io.File |
getFile()
This implementation throws a FileNotFoundException, assuming
that the resource cannot be resolved to an absolute file path.
|
protected java.io.File |
getFileForLastModifiedCheck()
Determine the File to use for timestamp checking.
|
java.lang.String |
getFilename()
This implementation always returns
null,
assuming that this resource type does not have a filename. |
java.net.URI |
getURI()
This implementation builds a URI based on the URL returned
by
getURL(). |
java.net.URL |
getURL()
This implementation throws a FileNotFoundException, assuming
that the resource cannot be resolved to a URL.
|
int |
hashCode()
This implementation returns the description's hash code.
|
boolean |
isOpen()
This implementation always returns
false. |
boolean |
isReadable()
This implementation always returns
true. |
long |
lastModified()
This implementation checks the timestamp of the underlying File,
if available.
|
java.lang.String |
toString()
This implementation returns the description of this resource.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitgetDescriptiongetInputStreampublic boolean exists()
public boolean isReadable()
true.isReadable in interface ResourceInputStreamSource.getInputStream()public boolean isOpen()
false.public java.net.URL getURL()
throws java.io.IOException
public java.net.URI getURI()
throws java.io.IOException
getURL().public java.io.File getFile()
throws java.io.IOException
getFile in interface Resourcejava.io.FileNotFoundException - if the resource cannot be resolved as
absolute file path, i.e. if the resource is not available in a file systemjava.io.IOException - in case of general resolution/reading failuresInputStreamSource.getInputStream()public long contentLength()
throws java.io.IOException
contentLength in interface Resourcejava.io.IOException - if the resource cannot be resolved
(in the file system or as some other known physical resource type)InputStreamSource.getInputStream()public long lastModified()
throws java.io.IOException
lastModified in interface Resourcejava.io.IOException - if the resource cannot be resolved
(in the file system or as some other known physical resource type)getFileForLastModifiedCheck()protected java.io.File getFileForLastModifiedCheck()
throws java.io.IOException
The default implementation delegates to getFile().
null)java.io.FileNotFoundException - if the resource cannot be resolved as
an absolute file path, i.e. is not available in a file systemjava.io.IOException - in case of general resolution/reading failurespublic Resource createRelative(java.lang.String relativePath) throws java.io.IOException
createRelative in interface ResourcerelativePath - the relative path (relative to this resource)java.io.IOException - if the relative resource cannot be determinedpublic java.lang.String getFilename()
null,
assuming that this resource type does not have a filename.getFilename in interface Resourcepublic java.lang.String toString()
toString in class java.lang.ObjectResource.getDescription()public boolean equals(java.lang.Object obj)
equals in class java.lang.ObjectResource.getDescription()public int hashCode()
hashCode in class java.lang.ObjectResource.getDescription()