Package 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.
-
Field Summary
Fields Modifier and Type Field Description protected CompilerConfigurationconfiguration -
Constructor Summary
Constructors Constructor Description AbstractReaderSource(CompilerConfiguration configuration) -
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.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.codehaus.groovy.control.io.ReaderSource
getReader, getURI
-
Field Details
-
configuration
-
-
Constructor Details
-
AbstractReaderSource
-
-
Method Details
-
canReopenSource
public boolean canReopenSource()Returns true if the source can be restarted (ie. if getReader() will return non-null on subsequent calls.- Specified by:
canReopenSourcein interfaceReaderSource- 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.- Specified by:
getLinein interfaceReaderSource- 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:
cleanupin interfaceHasCleanup- Specified by:
cleanupin interfaceReaderSource
-