Interface IResource
- All Known Implementing Classes:
ByteArrayResource
,FileResource
,PackageResource
,ResourceDelegate
,TextResource
,UrlResource
public interface IResource
Resource object bound to a specific protocol.
- Since:
- 6.0
- Author:
- F. van der Meer, O. Kerpershoek
-
Method Summary
Modifier and TypeMethodDescriptionThis method returns an input stream for the resource.asOutputStream
(boolean append) This method returns an output stream that may be used to write the contents of the resource.asReader()
This method returns a reader for the resource.asWriter
(boolean append) This method returns a writer that may be used to write the contents of the resource.boolean
This method may be used to create the resource.boolean
This method may be used to create the resource as folder.getInfo()
This method returns an object containing information about the resource.getRelative
(String relativePath) This method can be used to retrieve a resource relative to the current resource from the same resource manager.
-
Method Details
-
asInputStream
InputStream asInputStream()This method returns an input stream for the resource. The method will fail with an exception when the resource does not exist. The returned input stream should be closed by the invoking method.- Returns:
- Input stream that can be used to read the contents of the resource.
- Throws:
ResourceException
- This exception is thrown when the resource could not be read.
-
asOutputStream
This method returns an output stream that may be used to write the contents of the resource. The append parameter may be used to specify if data written to the output stream should be appended to the resource (true) or if the resource should be overwritten by the data added to the output stream (false).- Parameters:
append
- Boolean indicating if the data added to the output stream should be appended to the resource.- Returns:
- Output stream that may be used to write the contents of the resource.
- Throws:
ResourceException
- This exception is thrown when no output stream is available for the resource (for instance due to the resource being read-only).
-
asReader
Reader asReader()This method returns a reader for the resource. The method will fail with an exception when the resource does not exist. The returned reader should be closed by the invoking method.- Returns:
- Reader that can be used to read the contents of the resource.
- Throws:
ResourceException
- This exception is thrown when the resource could not be read.
-
asWriter
This method returns a writer that may be used to write the contents of the resource. The append parameter may be used to specify if data written to the writer should be appended to the resource (true) or if the resource should be overwritten by the data added to the writer (false).- Parameters:
append
- Boolean indicating if the data added to the writer should be appended to the resource.- Returns:
- Writer that may be used to write the contents of the resource.
- Throws:
ResourceException
- This exception is thrown when no writer is available for the resource (for instance due to the resource being read-only).
-
getRelative
This method can be used to retrieve a resource relative to the current resource from the same resource manager. The returned resource may not yet exist. This method is only supported for resources of the type 'folder'.- Parameters:
relativePath
- relative path to current protocol and location- Returns:
- A resource object
- Throws:
ResourceException
- when the path-format is incorrect
-
getInfo
IResourceInfo getInfo()This method returns an object containing information about the resource. The information object may be used to determine if the resource actually exists, if it is read only, etc...- Returns:
- Object containing information about the resource.
-
createFile
boolean createFile()This method may be used to create the resource. This method is only applicable for resources that have been requested through the getRelative method, and that do not yet exist. The method returns a boolean indicating if the resource was actually created. When this method is invoked on a resource from a read only resource manager, an exception is thrown.- Returns:
- boolean indicating if the resource was actually created.
- Throws:
ResourceException
- This exception is thrown when the method is invoked on a resource from a read only resource manager.
-
createFolder
boolean createFolder()This method may be used to create the resource as folder. This method is only applicable for resources that have been requested through the getRelative method, and that do not yet exist. The method returns a boolean indicating if the resource folder was actually created. When this method is invoked on a resource from a read only resource manager, an exception is thrown.- Returns:
- boolean indicating if the resource folder was actually created.
- Throws:
ResourceException
- This exception is thrown when the method is invoked on a resource from a read only resource manager.
-