org.springframework.core.io
Interface Resource

All Known Implementing Classes:
AbstractResource

public interface Resource
extends InputStreamSource

Interface for a resource descriptor that abstracts from the actual type of resource, like file or classpath resource.

An InputStream can be opened for every resource if it exists in physical form, but a File handle can just be returned for resources in the file system. The actual behavior is implementation-specific.

Author:
Juergen Hoeller
Since: 28.12.2003

Method Summary
 booleanexists()
          Return whether this resource actually exists in physical form.
 StringgetDescription()
          Return a description for this resource, to be used for error output when working with the resource.
 FilegetFile()
          Return a File handle for this resource.
 booleanisOpen()
          Return whether this resource represents a handle with an open stream.

Methods inherited from interface org.springframework.core.io.InputStreamSource
getInputStream

Method Detail

exists

public boolean exists()
Return whether this resource actually exists in physical form.

getDescription

public String getDescription()
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.

See Also:
java.lang.Object.toString()

getFile

public File getFile()
throws java.io.IOException
Return a File handle for this resource.
Throws:
IOException - if the resource cannot be resolved as absolute file path, i.e. if the resource is not available in a file system

isOpen

public boolean isOpen()
Return whether this resource represents a handle with an open stream. If true, the InputStream cannot be read multiple times, and must be read and closed to avoid resource leaks.

Will be false for all usual resource descriptors.