Class TraceInputStream

All Implemented Interfaces:
Closeable, AutoCloseable

public class TraceInputStream extends FilterInputStream
This class is a FilterInputStream that writes the bytes being read from the given input stream into the given output stream. This class is typically used to provide a trace of the data that is being retrieved from an input stream.
Author:
John Mani
  • Constructor Details

    • TraceInputStream

      public TraceInputStream(InputStream in, MailLogger logger)
      Creates an input stream filter built on top of the specified input stream.
      Parameters:
      in - the underlying input stream.
      logger - log trace here
    • TraceInputStream

      public TraceInputStream(InputStream in, OutputStream traceOut)
      Creates an input stream filter built on top of the specified input stream.
      Parameters:
      in - the underlying input stream.
      traceOut - the trace stream.
  • Method Details

    • setTrace

      public void setTrace(boolean trace)
      Set trace mode.
      Parameters:
      trace - the trace mode
    • setQuote

      public void setQuote(boolean quote)
      Set quote mode.
      Parameters:
      quote - the quote mode
    • read

      public int read() throws IOException
      Reads the next byte of data from this input stream. Returns -1 if no data is available. Writes out the read byte into the trace stream, if trace mode is true
      Overrides:
      read in class FilterInputStream
      Throws:
      IOException
    • read

      public int read(byte[] b, int off, int len) throws IOException
      Reads up to len bytes of data from this input stream into an array of bytes. Returns -1 if no more data is available. Writes out the read bytes into the trace stream, if trace mode is true
      Overrides:
      read in class FilterInputStream
      Throws:
      IOException