Class AbstractResource
java.lang.Object
nl.basjes.parse.useragent.utils.springframework.core.io.AbstractResource
- All Implemented Interfaces:
InputStreamSource, Resource
- Direct Known Subclasses:
AbstractFileResolvingResource, FileSystemResource, VfsResource
Convenience base class for {link 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.
- Since:
- 28.12.2003
- Author:
- Juergen Hoeller, Sam Brannen
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlongThis method reads the entire InputStream to determine the content length.createRelative(String relativePath) This implementation throws a FileNotFoundException, assuming that relative resources cannot be created for this resource.booleanThis implementation compares description strings.booleanexists()This implementation checks whether a File can be opened, falling back to whether an InputStream can be opened.getFile()This implementation throws a FileNotFoundException, assuming that the resource cannot be resolved to an absolute file path.This implementation always returnsnull, assuming that this resource type does not have a filename.getURI()This implementation builds a URI based on the URL returned by {link #getURL()}.getURL()This implementation throws a FileNotFoundException, assuming that the resource cannot be resolved to a URL.inthashCode()This implementation returns the description's hash code.booleanisFile()This implementation always returnsfalse.booleanisOpen()This implementation always returnsfalse.toString()This implementation returns the description of this resource.Methods inherited from interface InputStreamSource
getInputStreamMethods inherited from interface Resource
getDescription
-
Constructor Details
-
AbstractResource
public AbstractResource()
-
-
Method Details
-
exists
-
isOpen
-
isFile
-
getURL
This implementation throws a FileNotFoundException, assuming that the resource cannot be resolved to a URL.- Specified by:
getURLin interfaceResource- Throws:
IOException- if the resource cannot be resolved as URL, i.e. if the resource is not available as a descriptor
-
getURI
This implementation builds a URI based on the URL returned by {link #getURL()}.- Specified by:
getURIin interfaceResource- Throws:
IOException- if the resource cannot be resolved as URI, i.e. if the resource is not available as a descriptor
-
getFile
This implementation throws a FileNotFoundException, assuming that the resource cannot be resolved to an absolute file path.- Specified by:
getFilein interfaceResource- Throws:
IOException- in case of general resolution/reading failures see #getInputStream()
-
contentLength
This method reads the entire InputStream to determine the content length.For a custom subclass of
InputStreamResource, we strongly recommend overriding this method with a more optimal implementation, e.g. checking File length, or possibly simply returning -1 if the stream can only be read once. see #getInputStream()- Specified by:
contentLengthin interfaceResource- Throws:
IOException- if the resource cannot be resolved (in the file system or as some other known physical resource type)
-
createRelative
This implementation throws a FileNotFoundException, assuming that relative resources cannot be created for this resource.- Specified by:
createRelativein interfaceResource- Parameters:
relativePath- the relative path (relative to this resource)- Returns:
- the resource handle for the relative resource
- Throws:
IOException- if the relative resource cannot be determined
-
getFilename
This implementation always returnsnull, assuming that this resource type does not have a filename.- Specified by:
getFilenamein interfaceResource
-
equals
-
hashCode
-
toString
-