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.
    • Constructor Detail

      • 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 Detail

      • 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