|
spring-core | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface Resource
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.
getInputStream()
,
getURL()
,
getURI()
,
getFile()
,
WritableResource
,
ContextResource
,
FileSystemResource
,
ClassPathResource
,
UrlResource
,
ByteArrayResource
,
InputStreamResource
Method Summary | |
---|---|
long |
contentLength()
Determine the content length for this resource. |
Resource |
createRelative(java.lang.String relativePath)
Create a resource relative to this resource. |
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. |
java.io.InputStream |
getInputStream()
Return an InputStream . |
java.net.URI |
getURI()
Return a URI handle for this resource. |
java.net.URL |
getURL()
Return a URL handle for this resource. |
boolean |
isOpen()
Return whether this resource represents a handle with an open stream. |
boolean |
isReadable()
Return whether the contents of this resource can be read, e.g. |
long |
lastModified()
Determine the last-modified timestamp for this resource. |
Method Detail |
---|
boolean 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()
boolean isOpen()
Will be false
for typical resource descriptors.
java.net.URL getURL() throws java.io.IOException
java.io.IOException
- if the resource cannot be resolved as URL,
i.e. if the resource is not available as descriptorjava.net.URI getURI() throws java.io.IOException
java.io.IOException
- if the resource cannot be resolved as URI,
i.e. if the resource is not available as descriptorjava.io.File getFile() throws java.io.IOException
java.io.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 java.io.IOException
java.io.IOException
- if the resource cannot be resolved
(in the file system or as some other known physical resource type)long lastModified() throws java.io.IOException
java.io.IOException
- if the resource cannot be resolved
(in the file system or as some other known physical resource type)Resource createRelative(java.lang.String relativePath) throws java.io.IOException
relativePath
- the relative path (relative to this resource)
java.io.IOException
- if the relative resource cannot be determinedjava.lang.String getFilename()
Returns null
if this type of resource does not
have a filename.
java.lang.String getDescription()
Implementations are also encouraged to return this value
from their toString
method.
Object.toString()
java.io.InputStream getInputStream() throws java.io.IOException
InputStream
.
It is expected that each call creates a fresh stream.
This requirement is particularly important when you consider an API such
as JavaMail, which needs to be able to read the stream multiple times when
creating mail attachments. For such a use case, it is required
that each getInputStream()
call returns a fresh stream.
getInputStream
in interface InputStreamSource
null
).
java.io.IOException
- if the stream could not be openedorg.springframework.mail.javamail.MimeMessageHelper#addAttachment(String, InputStreamSource)
|
spring-core | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |