You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2010/05/12 20:20:11 UTC
svn commit: r943614 - in
/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn:
DefaultClientConnection.java LoggingSessionInputBuffer.java
LoggingSessionOutputBuffer.java Wire.java
Author: olegk
Date: Wed May 12 18:20:11 2010
New Revision: 943614
URL: http://svn.apache.org/viewvc?rev=943614&view=rev
Log:
HTTPCLIENT-940: deprecated methods dependent on the default charset
Modified:
httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultClientConnection.java
httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionInputBuffer.java
httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionOutputBuffer.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/DefaultClientConnection.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultClientConnection.java?rev=943614&r1=943613&r2=943614&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultClientConnection.java (original)
+++ httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultClientConnection.java Wed May 12 18:20:11 2010
@@ -43,6 +43,7 @@ import org.apache.http.HttpRequest;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseFactory;
import org.apache.http.params.HttpParams;
+import org.apache.http.params.HttpProtocolParams;
import org.apache.http.protocol.HttpContext;
import org.apache.http.impl.SocketHttpClientConnection;
import org.apache.http.io.HttpMessageParser;
@@ -174,7 +175,10 @@ public class DefaultClientConnection ext
buffersize,
params);
if (wireLog.isDebugEnabled()) {
- inbuffer = new LoggingSessionInputBuffer(inbuffer, new Wire(wireLog));
+ inbuffer = new LoggingSessionInputBuffer(
+ inbuffer,
+ new Wire(wireLog),
+ HttpProtocolParams.getHttpElementCharset(params));
}
return inbuffer;
}
@@ -192,7 +196,10 @@ public class DefaultClientConnection ext
buffersize,
params);
if (wireLog.isDebugEnabled()) {
- outbuffer = new LoggingSessionOutputBuffer(outbuffer, new Wire(wireLog));
+ outbuffer = new LoggingSessionOutputBuffer(
+ outbuffer,
+ new Wire(wireLog),
+ HttpProtocolParams.getHttpElementCharset(params));
}
return outbuffer;
}
Modified: httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionInputBuffer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionInputBuffer.java?rev=943614&r1=943613&r2=943614&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionInputBuffer.java (original)
+++ httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionInputBuffer.java Wed May 12 18:20:11 2010
@@ -32,6 +32,7 @@ import org.apache.http.annotation.Immuta
import org.apache.http.io.HttpTransportMetrics;
import org.apache.http.io.SessionInputBuffer;
+import org.apache.http.protocol.HTTP;
import org.apache.http.util.CharArrayBuffer;
/**
@@ -49,15 +50,24 @@ public class LoggingSessionInputBuffer i
/** The wire log to use for writing. */
private final Wire wire;
+ private String charset;
+
/**
* Create an instance that wraps the specified session input buffer.
* @param in The session input buffer.
* @param wire The wire log to use.
+ * @param charset protocol charset, <code>ASCII</code> if <code>null</code>
*/
- public LoggingSessionInputBuffer(final SessionInputBuffer in, final Wire wire) {
+ public LoggingSessionInputBuffer(
+ final SessionInputBuffer in, final Wire wire, final String charset) {
super();
this.in = in;
this.wire = wire;
+ this.charset = charset != null ? charset : HTTP.ASCII;
+ }
+
+ public LoggingSessionInputBuffer(final SessionInputBuffer in, final Wire wire) {
+ this(in, wire, null);
}
public boolean isDataAvailable(int timeout) throws IOException {
@@ -91,7 +101,8 @@ public class LoggingSessionInputBuffer i
public String readLine() throws IOException {
String s = this.in.readLine();
if (this.wire.enabled() && s != null) {
- this.wire.input(s + "[EOL]");
+ String tmp = s + "\r\n";
+ this.wire.input(tmp.getBytes(this.charset));
}
return s;
}
@@ -101,7 +112,8 @@ public class LoggingSessionInputBuffer i
if (this.wire.enabled() && l >= 0) {
int pos = buffer.length() - l;
String s = new String(buffer.buffer(), pos, l);
- this.wire.input(s + "[EOL]");
+ String tmp = s + "\r\n";
+ this.wire.input(tmp.getBytes(this.charset));
}
return l;
}
Modified: httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionOutputBuffer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionOutputBuffer.java?rev=943614&r1=943613&r2=943614&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionOutputBuffer.java (original)
+++ httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/LoggingSessionOutputBuffer.java Wed May 12 18:20:11 2010
@@ -32,6 +32,7 @@ import org.apache.http.annotation.Immuta
import org.apache.http.io.HttpTransportMetrics;
import org.apache.http.io.SessionOutputBuffer;
+import org.apache.http.protocol.HTTP;
import org.apache.http.util.CharArrayBuffer;
/**
@@ -49,15 +50,24 @@ public class LoggingSessionOutputBuffer
/** The wire log to use. */
private final Wire wire;
+ private String charset;
+
/**
* Create an instance that wraps the specified session output buffer.
* @param out The session output buffer.
* @param wire The Wire log to use.
+ * @param charset protocol charset, <code>ASCII</code> if <code>null</code>
*/
- public LoggingSessionOutputBuffer(final SessionOutputBuffer out, final Wire wire) {
+ public LoggingSessionOutputBuffer(
+ final SessionOutputBuffer out, final Wire wire, final String charset) {
super();
this.out = out;
this.wire = wire;
+ this.charset = charset != null ? charset : HTTP.ASCII;
+ }
+
+ public LoggingSessionOutputBuffer(final SessionOutputBuffer out, final Wire wire) {
+ this(out, wire, null);
}
public void write(byte[] b, int off, int len) throws IOException {
@@ -89,14 +99,16 @@ public class LoggingSessionOutputBuffer
this.out.writeLine(buffer);
if (this.wire.enabled()) {
String s = new String(buffer.buffer(), 0, buffer.length());
- this.wire.output(s + "[EOL]");
+ String tmp = s + "\r\n";
+ this.wire.output(tmp.getBytes(this.charset));
}
}
public void writeLine(final String s) throws IOException {
this.out.writeLine(s);
if (this.wire.enabled()) {
- this.wire.output(s + "[EOL]");
+ String tmp = s + "\r\n";
+ this.wire.output(tmp.getBytes(this.charset));
}
}
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=943614&r1=943613&r2=943614&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 Wed May 12 18:20:11 2010
@@ -1,5 +1,4 @@
/*
- * $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//httpclient/src/java/org/apache/commons/httpclient/Wire.java,v 1.9 2004/06/24 21:39:52 mbecke Exp $
* ====================================================================
*
* Licensed to the Apache Software Foundation (ASF) under one or more
@@ -142,6 +141,7 @@ public class Wire {
input(new byte[] {(byte) b});
}
+ @Deprecated
public void output(final String s)
throws IOException {
if (s == null) {
@@ -150,6 +150,7 @@ public class Wire {
output(s.getBytes());
}
+ @Deprecated
public void input(final String s)
throws IOException {
if (s == null) {