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 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 CompilerConfiguration
configuration
-
Constructor Summary
Constructors Constructor Description AbstractReaderSource(CompilerConfiguration configuration)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canReopenSource()
Returns true if the source can be restarted (ie.void
cleanup()
Cleans up any cached resources used by getLine().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
-
Methods inherited from interface org.codehaus.groovy.control.io.ReaderSource
getReader, getURI
-
-
-
-
Field Detail
-
configuration
protected CompilerConfiguration configuration
-
-
Constructor Detail
-
AbstractReaderSource
public AbstractReaderSource(CompilerConfiguration configuration)
-
-
Method Detail
-
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 interfaceReaderSource
- Returns:
- true if the resource can be reopened for reading
-
getLine
public 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 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:
cleanup
in interfaceHasCleanup
- Specified by:
cleanup
in interfaceReaderSource
-
-