Class TeeReader

    • Constructor Summary

      Constructors 
      Constructor Description
      TeeReader​(Reader input, Writer branch)
      Creates a TeeReader that proxies the given Reader and copies all read characters to the given Writer.
      TeeReader​(Reader input, Writer branch, boolean closeBranch)
      Creates a TeeReader that proxies the given Reader and copies all read characters to the given Writer.
    • Constructor Detail

      • TeeReader

        public TeeReader​(Reader input,
                         Writer branch)
        Creates a TeeReader that proxies the given Reader and copies all read characters to the given Writer. The given writer will not be closed when this reader gets closed.
        Parameters:
        input - reader to be proxied
        branch - writer that will receive a copy of all characters read
      • TeeReader

        public TeeReader​(Reader input,
                         Writer branch,
                         boolean closeBranch)
        Creates a TeeReader that proxies the given Reader and copies all read characters to the given Writer. The given writer will be closed when this reader gets closed if the closeBranch parameter is true.
        Parameters:
        input - reader to be proxied
        branch - writer that will receive a copy of all characters read
        closeBranch - flag for closing also the writer when this reader is closed
    • Method Detail

      • close

        public void close()
                   throws IOException
        Closes the proxied reader and, if so configured, the associated writer. An exception thrown from the reader will not prevent closing of the writer.
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in interface Closeable
        Overrides:
        close in class ProxyReader
        Throws:
        IOException - if either the reader or writer could not be closed
      • read

        public int read()
                 throws IOException
        Reads a single character from the proxied reader and writes it to the associated writer.
        Overrides:
        read in class ProxyReader
        Returns:
        next character from the reader, or -1 if the reader has ended
        Throws:
        IOException - if the reader could not be read (or written)
      • read

        public int read​(char[] chr)
                 throws IOException
        Reads characters from the proxied reader and writes the read characters to the associated writer.
        Overrides:
        read in class ProxyReader
        Parameters:
        chr - character buffer
        Returns:
        number of characters read, or -1 if the reader has ended
        Throws:
        IOException - if the reader could not be read (or written)
      • read

        public int read​(char[] chr,
                        int st,
                        int end)
                 throws IOException
        Reads characters from the proxied reader and writes the read characters to the associated writer.
        Overrides:
        read in class ProxyReader
        Parameters:
        chr - character buffer
        st - start offset within the buffer
        end - maximum number of characters to read
        Returns:
        number of characters read, or -1 if the reader has ended
        Throws:
        IOException - if the reader could not be read (or written)
      • read

        public int read​(CharBuffer target)
                 throws IOException
        Reads characters from the proxied reader and writes the read characters to the associated writer.
        Specified by:
        read in interface Readable
        Overrides:
        read in class ProxyReader
        Parameters:
        target - character buffer
        Returns:
        number of characters read, or -1 if the reader has ended
        Throws:
        IOException - if the reader could not be read (or written)