Class UnixLineEndingInputStream

java.lang.Object
java.io.InputStream
org.apache.commons.io.input.UnixLineEndingInputStream
All Implemented Interfaces:
Closeable, AutoCloseable

public class UnixLineEndingInputStream extends InputStream
A filtering input stream that ensures the content will have UNIX-style line endings, LF.
Since:
2.5
  • Field Details

    • atEos

      private boolean atEos
    • atSlashCr

      private boolean atSlashCr
    • atSlashLf

      private boolean atSlashLf
    • in

      private final InputStream in
    • lineFeedAtEndOfFile

      private final boolean lineFeedAtEndOfFile
  • Constructor Details

    • UnixLineEndingInputStream

      public UnixLineEndingInputStream(InputStream inputStream, boolean ensureLineFeedAtEndOfFile)
      Creates an input stream that filters another stream
      Parameters:
      inputStream - The input stream to wrap
      ensureLineFeedAtEndOfFile - true to ensure that the file ends with LF
  • Method Details

    • close

      public void close() throws IOException
      Closes the stream. Also closes the underlying stream.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Overrides:
      close in class InputStream
      Throws:
      IOException - upon error
    • handleEos

      private int handleEos(boolean previousWasSlashCr)
      Handles the end of stream condition.
      Parameters:
      previousWasSlashCr - Indicates if the last seen was a \r.
      Returns:
      The next char to output to the stream.
    • mark

      public void mark(int readlimit)
      Overrides:
      mark in class InputStream
    • read

      public int read() throws IOException
      Specified by:
      read in class InputStream
      Throws:
      IOException
    • readWithUpdate

      private int readWithUpdate() throws IOException
      Reads the next item from the target, updating internal flags in the process
      Returns:
      the next int read from the target stream
      Throws:
      IOException - upon error