org.codehaus.groovy.control.io
Class AbstractReaderSource
java.lang.Object
org.codehaus.groovy.control.io.AbstractReaderSource
- All Implemented Interfaces:
- HasCleanup, ReaderSource
- Direct Known Subclasses:
- FileReaderSource, InputStreamReaderSource, StringReaderSource, URLReaderSource
public abstract class AbstractReaderSource
- extends java.lang.Object
- implements ReaderSource
For ReaderSources that can choose a parent class, a base that
provides common functionality.
Method Summary |
boolean |
canReopenSource()
Returns true if the source can be restarted (ie. if getReader()
will return non-null on subsequent calls. |
void |
cleanup()
Cleans up any cached resources used by getLine(). |
java.lang.String |
getLine(int lineNumber,
Janitor janitor)
Returns a line from the source, or null, if unavailable. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
configuration
protected CompilerConfiguration configuration
AbstractReaderSource
public AbstractReaderSource(CompilerConfiguration configuration)
canReopenSource
public boolean canReopenSource()
- Returns true if the source can be restarted (ie. if getReader()
will return non-null on subsequent calls.
- Specified by:
canReopenSource
in interface ReaderSource
- Returns:
- true if the resource can be reopened for reading
getLine
public java.lang.String getLine(int lineNumber,
Janitor janitor)
- Returns a line from the source, or null, if unavailable. If
you supply a Janitor, resources will be cached.
- Specified by:
getLine
in interface ReaderSource
- Parameters:
lineNumber
- the number of the line of interestjanitor
- helper to clean up afterwards
- Returns:
- the line of interest
cleanup
public void cleanup()
- Cleans up any cached resources used by getLine().
- Specified by:
cleanup
in interface HasCleanup
- Specified by:
cleanup
in interface ReaderSource