Package org.codehaus.groovy.control.io
Interface ReaderSource
- All Superinterfaces:
HasCleanup
- All Known Implementing Classes:
AbstractReaderSource,FileReaderSource,InputStreamReaderSource,StringReaderSource,URLReaderSource
public interface ReaderSource extends HasCleanup
An interface for things that can supply (and potentially resupply) a Reader
on a source stream.
-
Method Summary
Modifier and Type Method Description booleancanReopenSource()Returns true if the source can be restarted (ie.voidcleanup()Cleans up any cached resources used by getLine().java.lang.StringgetLine(int lineNumber, Janitor janitor)Returns a line from the source, or null, if unavailable.java.io.ReadergetReader()Returns a new Reader on the underlying source object.java.net.URIgetURI()Returns a URI for this source.
-
Method Details
-
getReader
java.io.Reader getReader() throws java.io.IOExceptionReturns a new Reader on the underlying source object. Returns null if the source can't be reopened.- Returns:
- the reader to the resource
- Throws:
java.io.IOException- if there was an error opening for stream
-
canReopenSource
boolean canReopenSource()Returns true if the source can be restarted (ie. if getReader() will return non-null on subsequent calls.- Returns:
- true if the resource can be reopened for reading
-
getLine
Returns a line from the source, or null, if unavailable. If you supply a Janitor, resources will be cached.- Parameters:
lineNumber- the number of the line of interestjanitor- helper to clean up afterwards- Returns:
- the line of interest
-
cleanup
void cleanup()Cleans up any cached resources used by getLine().- Specified by:
cleanupin interfaceHasCleanup
-
getURI
java.net.URI getURI()Returns a URI for this source.- Since:
- 2.3.0
-