Same comments apply to this commit as to the one in 4.3

On 20 February 2014 10:53,  <[email protected]> wrote:
> Author: olegk
> Date: Thu Feb 20 10:52:59 2014
> New Revision: 1570140
>
> URL: http://svn.apache.org/r1570140
> Log:
> Wire log to include I/O errors and end of stream
>
> Modified:
>     
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingInputStream.java
>     
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingOutputStream.java
>     
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/Wire.java
>
> Modified: 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingInputStream.java
> URL: 
> http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingInputStream.java?rev=1570140&r1=1570139&r2=1570140&view=diff
> ==============================================================================
> --- 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingInputStream.java
>  (original)
> +++ 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingInputStream.java
>  Thu Feb 20 10:52:59 2014
> @@ -51,48 +51,79 @@ class LoggingInputStream extends InputSt
>
>      @Override
>      public int read() throws IOException {
> -        final int b = in.read();
> -        if (b != -1) {
> -            wire.input(b);
> +        try {
> +            final int b = in.read();
> +            if (b == -1) {
> +                wire.input("end of stream");
> +            } else {
> +                wire.input(b);
> +            }
> +            return b;
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
>          }
> -        return b;
>      }
>
>      @Override
>      public int read(final byte[] b) throws IOException {
> -        final int bytesRead = in.read(b);
> -        if (bytesRead != -1) {
> -            wire.input(b, 0, bytesRead);
> +        try {
> +            final int bytesRead = in.read(b);
> +            if (bytesRead == -1) {
> +                wire.input("end of stream");
> +            } else if (bytesRead > 0) {
> +                wire.input(b, 0, bytesRead);
> +            }
> +            return bytesRead;
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
>          }
> -        return bytesRead;
>      }
>
>      @Override
>      public int read(final byte[] b, final int off, final int len) throws 
> IOException {
> -        final int bytesRead = in.read(b, off, len);
> -        if (bytesRead != -1) {
> -            wire.input(b, off, bytesRead);
> +        try {
> +            final int bytesRead = in.read(b, off, len);
> +            if (bytesRead == -1) {
> +                wire.input("end of stream");
> +            } else if (bytesRead > 0) {
> +                wire.input(b, off, bytesRead);
> +            }
> +            return bytesRead;
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
>          }
> -        return bytesRead;
>      }
>
>      @Override
>      public long skip(final long n) throws IOException {
> -        return super.skip(n);
> +        try {
> +            return super.skip(n);
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>      @Override
>      public int available() throws IOException {
> -        return in.available();
> +        try {
> +            return in.available();
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>      @Override
> -    public synchronized void mark(final int readlimit) {
> +    public void mark(final int readlimit) {
>          super.mark(readlimit);
>      }
>
>      @Override
> -    public synchronized void reset() throws IOException {
> +    public void reset() throws IOException {
>          super.reset();
>      }
>
> @@ -103,7 +134,12 @@ class LoggingInputStream extends InputSt
>
>      @Override
>      public void close() throws IOException {
> -        in.close();
> +        try {
> +            in.close();
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>  }
>
> Modified: 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingOutputStream.java
> URL: 
> http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingOutputStream.java?rev=1570140&r1=1570139&r2=1570140&view=diff
> ==============================================================================
> --- 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingOutputStream.java
>  (original)
> +++ 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingOutputStream.java
>  Thu Feb 20 10:52:59 2014
> @@ -51,29 +51,54 @@ class LoggingOutputStream extends Output
>
>      @Override
>      public void write(final int b) throws IOException {
> -        wire.output(b);
> +        try {
> +            wire.output(b);
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>      @Override
>      public void write(final byte[] b) throws IOException {
> -        wire.output(b);
> -        out.write(b);
> +        try {
> +            wire.output(b);
> +            out.write(b);
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>      @Override
>      public void write(final byte[] b, final int off, final int len) throws 
> IOException {
> -        wire.output(b, off, len);
> -        out.write(b, off, len);
> +        try {
> +            wire.output(b, off, len);
> +            out.write(b, off, len);
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>      @Override
>      public void flush() throws IOException {
> -        out.flush();
> +        try {
> +            out.flush();
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>      @Override
>      public void close() throws IOException {
> -        out.close();
> +        try {
> +            out.close();
> +        } catch (IOException ex) {
> +            wire.input("I/O error: " + ex.getMessage());
> +            throw ex;
> +        }
>      }
>
>  }
>
> Modified: 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/Wire.java
> URL: 
> http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/Wire.java?rev=1570140&r1=1570139&r2=1570140&view=diff
> ==============================================================================
> --- 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/Wire.java
>  (original)
> +++ 
> httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/Wire.java
>  Thu Feb 20 10:52:59 2014
> @@ -138,20 +138,12 @@ public class Wire {
>          input(new byte[] {(byte) b});
>      }
>
> -    /**
> -     * @deprecated (4.1)  do not use
> -     */
> -    @Deprecated
>      public void output(final String s)
>        throws IOException {
>          Args.notNull(s, "Output");
>          output(s.getBytes());
>      }
>
> -    /**
> -     * @deprecated (4.1)  do not use
> -     */
> -    @Deprecated
>      public void input(final String s)
>        throws IOException {
>          Args.notNull(s, "Input");
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to