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
    boolean
    Returns true if the source can be restarted (ie.
    void
    Cleans up any cached resources used by getLine().
    getLine(int lineNumber, Janitor janitor)
    Returns a line from the source, or null, if unavailable.
    Returns a new Reader on the underlying source object.
    Returns a URI for this source.
  • Method Details

    • getReader

      Reader getReader() throws IOException
      Returns a new Reader on the underlying source object. Returns null if the source can't be reopened.
      Returns:
      the reader to the resource
      Throws:
      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

      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.
      Parameters:
      lineNumber - the number of the line of interest
      janitor - helper to clean up afterwards
      Returns:
      the line of interest
    • cleanup

      void cleanup()
      Cleans up any cached resources used by getLine().
      Specified by:
      cleanup in interface HasCleanup
    • getURI

      URI getURI()
      Returns a URI for this source.
      Since:
      2.3.0