Package blbutil

Class InputIt

java.lang.Object
blbutil.InputIt
All Implemented Interfaces:
FileIt<String>, Closeable, AutoCloseable, Iterator<String>

public class InputIt extends Object implements FileIt<String>

Class InputIt is a buffered iterator whose next() method returns lines of a text input stream.

If an IOException is thrown when an InputIt instance reads from the text input stream, the IOException is trapped, an error message is written to standard out, and the Java Virtual Machine is terminated.

The GZIP file format specification is described RFC 1952 and the BGZIP file format specification is described in the Sequence Alignment/Map Format Specification

Instances of class InputIt are not thread-safe.

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Closes the input stream and releases any system resources that are associated with it.
    Returns the file from which the data are read, or null if the data are read from standard input or if the data source is unknown.
    static FileIt<String>
    fromBGZipFile(File file, int nBufferedBlocks)
    Constructs and returns a buffered FileIt<String> instance that iterates through lines of the specified compressed or uncompressed text file.
    static InputIt
    Constructs and returns a buffered InputIt instance that iterates through lines of the specified compressed or uncompressed text file.
    static InputIt
    Constructs and returns an InputIt instance with the default buffer size that iterates through lines of text read from standard input.
    static InputIt
    Constructs and returns a buffered InputIt instance that iterates through lines of the specified text file.
    boolean
    Returns true if the iteration has more elements.
    Returns the next element in the iteration.
    void
    The remove method is not supported by this iterator.
    Returns a string representation of this iterator.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.util.Iterator

    forEachRemaining
  • Method Details

    • file

      public File file()
      Description copied from interface: FileIt
      Returns the file from which the data are read, or null if the data are read from standard input or if the data source is unknown.
      Specified by:
      file in interface FileIt<String>
      Returns:
      the file from which the data are read, or null if the data are read from standard input or if the data source is unknown
    • hasNext

      public boolean hasNext()
      Returns true if the iteration has more elements.
      Specified by:
      hasNext in interface Iterator<String>
      Returns:
      true if the iteration has more elements
    • next

      public String next()
      Returns the next element in the iteration.
      Specified by:
      next in interface Iterator<String>
      Returns:
      the next element in the iteration
      Throws:
      NoSuchElementException - if the iteration has no more elements
    • remove

      public void remove()
      The remove method is not supported by this iterator.
      Specified by:
      remove in interface Iterator<String>
      Throws:
      UnsupportedOperationException - if this method is invoked
    • close

      public void close()
      Description copied from interface: FileIt
      Closes the input stream and releases any system resources that are associated with it. If the input stream is already closed then invoking this method has no effect.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface FileIt<String>
    • toString

      public String toString()
      Returns a string representation of this iterator. The exact details of the representation are unspecified and subject to change.
      Specified by:
      toString in interface FileIt<String>
      Overrides:
      toString in class Object
      Returns:
      a string representation of this iterator
    • fromStdIn

      public static InputIt fromStdIn()
      Constructs and returns an InputIt instance with the default buffer size that iterates through lines of text read from standard input.
      Returns:
      a new InputIt instance that iterates through lines of text read from standard input
    • fromBGZipFile

      public static FileIt<String> fromBGZipFile(File file, int nBufferedBlocks)
      Constructs and returns a buffered FileIt<String> instance that iterates through lines of the specified compressed or uncompressed text file. If the filename ends in ".gz" or ".bgz", the file must be GZIP-compressed.
      Parameters:
      file - a compressed or uncompressed text file
      nBufferedBlocks - the number buffered GZIP blocks if the specified file is bgzip-compressed
      Returns:
      FileIt<String> instance that iterates through the lines of the specified file
      Throws:
      NullPointerException - if file == null
    • fromGzipFile

      public static InputIt fromGzipFile(File file)
      Constructs and returns a buffered InputIt instance that iterates through lines of the specified compressed or uncompressed text file. If the filename ends in ".gz", the file must be GZIP-compressed. The Java virtual machine will exit with an error message if an I/O error is encountered.
      Parameters:
      file - a compressed or uncompressed text file
      Returns:
      a buffered InputIt instance that iterates through lines of the specified text file
      Throws:
      NullPointerException - if file == null
    • fromTextFile

      public static InputIt fromTextFile(File file)
      Constructs and returns a buffered InputIt instance that iterates through lines of the specified text file.
      Parameters:
      file - a text file
      Returns:
      a buffered InputIt instance that iterates through lines of the specified text file
      Throws:
      NullPointerException - if filename == null