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 2016/03/15 21:35:36 UTC
svn commit: r1735164 [2/4] - in /httpcomponents/httpcore/trunk:
httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/
httpcore5-ab/src/test/java/org/apache/hc/core5/http/benchmark/
httpcore5/src/examples/org/apache/hc/core5/http/examples/ http...
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseParser.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseParser.java Tue Mar 15 20:35:34 2016
@@ -33,11 +33,11 @@ import org.apache.hc.core5.http.HttpResp
import org.apache.hc.core5.http.HttpResponseFactory;
import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.StatusLine;
import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.MessageConstraints;
import org.apache.hc.core5.http.impl.DefaultHttpResponseFactory;
import org.apache.hc.core5.http.message.LineParser;
+import org.apache.hc.core5.http.message.StatusLine;
import org.apache.hc.core5.util.CharArrayBuffer;
/**
@@ -89,11 +89,11 @@ public class DefaultHttpResponseParser e
@Override
protected HttpResponse createMessage(final CharArrayBuffer buffer) throws HttpException {
final StatusLine statusLine = getLineParser().parseStatusLine(buffer);
- final ProtocolVersion version = statusLine.getProtocolVersion();
- if (version.greaterEquals(HttpVersion.HTTP_2)) {
- throw new UnsupportedHttpVersionException("Unsupported version: " + version);
+ final ProtocolVersion transportVersion = statusLine.getProtocolVersion();
+ if (transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
}
- return this.responseFactory.newHttpResponse(statusLine, null);
+ return this.responseFactory.newHttpResponse(transportVersion, statusLine.getStatusCode(), statusLine.getReasonPhrase());
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseWriter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseWriter.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseWriter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseWriter.java Tue Mar 15 20:35:34 2016
@@ -31,7 +31,10 @@ import java.io.IOException;
import org.apache.hc.core5.annotation.NotThreadSafe;
import org.apache.hc.core5.http.HttpResponse;
+import org.apache.hc.core5.http.HttpVersion;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.message.LineFormatter;
+import org.apache.hc.core5.http.message.StatusLine;
import org.apache.hc.core5.util.CharArrayBuffer;
/**
@@ -65,7 +68,12 @@ public class DefaultHttpResponseWriter e
@Override
protected void writeHeadLine(final HttpResponse message, final CharArrayBuffer lineBuf) throws IOException {
lineBuf.clear();
- getLineFormatter().formatStatusLine(lineBuf, message.getStatusLine());
+ ProtocolVersion transportVersion = message.getVersion();
+ if (transportVersion == null || transportVersion.greaterEquals(HttpVersion.HTTP_2_0)) {
+ transportVersion = HttpVersion.HTTP_1_1;
+ }
+ getLineFormatter().formatStatusLine(lineBuf,
+ new StatusLine(transportVersion, message.getCode(), message.getReasonPhrase()));
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpClientConnection.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpClientConnection.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpClientConnection.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpClientConnection.java Tue Mar 15 20:35:34 2016
@@ -191,6 +191,7 @@ public class DefaultNHttpClientConnectio
this.connMetrics.incrementResponseCount();
}
this.hasBufferedInput = this.inbuf.hasData();
+ this.version = this.response.getVersion();
onResponseReceived(this.response);
handler.responseReceived(this);
if (this.contentDecoder == null) {
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpServerConnection.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpServerConnection.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpServerConnection.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultNHttpServerConnection.java Tue Mar 15 20:35:34 2016
@@ -190,6 +190,7 @@ public class DefaultNHttpServerConnectio
}
this.connMetrics.incrementRequestCount();
this.hasBufferedInput = this.inbuf.hasData();
+ this.version = this.request.getVersion();
onRequestReceived(this.request);
handler.requestReceived(this);
if (this.contentDecoder == null) {
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncRequestExecutor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncRequestExecutor.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncRequestExecutor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncRequestExecutor.java Tue Mar 15 20:35:34 2016
@@ -197,7 +197,7 @@ public class HttpAsyncRequestExecutor im
if (request == null) {
return;
}
- final ProtocolVersion version = request.getRequestLine().getProtocolVersion();
+ final ProtocolVersion version = context.getProtocolVersion();
if (pipelined && version.lessEquals(HttpVersion.HTTP_1_0)) {
throw new ProtocolException(version + " cannot be used with request pipelining");
}
@@ -300,8 +300,7 @@ public class HttpAsyncRequestExecutor im
if (statusCode < HttpStatus.SC_OK) {
// 1xx intermediate response
if (statusCode != HttpStatus.SC_CONTINUE) {
- throw new ProtocolException(
- "Unexpected response: " + response.getStatusLine());
+ throw new ProtocolException("Unexpected response " + response.getCode());
}
if (state.getRequestState() == MessageState.ACK_EXPECTED) {
final int timeout = state.getTimeout();
@@ -518,7 +517,7 @@ public class HttpAsyncRequestExecutor im
private boolean canResponseHaveBody(final HttpRequest request, final HttpResponse response) {
- final String method = request.getRequestLine().getMethod();
+ final String method = request.getMethod();
final int status = response.getCode();
if (method.equalsIgnoreCase("HEAD")) {
@@ -621,13 +620,15 @@ public class HttpAsyncRequestExecutor im
buf.append(this.requestState);
if (this.request != null) {
buf.append(" ");
- buf.append(this.request.getRequestLine());
+ buf.append(this.request.getMethod());
+ buf.append(" ");
+ buf.append(this.request.getUri());
}
buf.append("; incoming ");
buf.append(this.responseState);
if (this.response != null) {
buf.append(" ");
- buf.append(this.response.getStatusLine());
+ buf.append(this.response.getCode());
}
if (this.earlyResponse) {
buf.append(" (early response)");
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncService.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncService.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncService.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncService.java Tue Mar 15 20:35:34 2016
@@ -49,6 +49,7 @@ import org.apache.hc.core5.http.HttpStat
import org.apache.hc.core5.http.MethodNotSupportedException;
import org.apache.hc.core5.http.NotImplementedException;
import org.apache.hc.core5.http.ProtocolException;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.entity.ContentType;
import org.apache.hc.core5.http.impl.DefaultConnectionReuseStrategy;
@@ -281,6 +282,10 @@ public class HttpAsyncService implements
context.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
context.setAttribute(HttpCoreContext.HTTP_CONNECTION, conn);
+ final ProtocolVersion transportVersion = request.getVersion();
+ if (transportVersion != null) {
+ context.setProtocolVersion(transportVersion);
+ }
this.httpProcessor.process(request, context);
final HttpAsyncRequestHandler<Object> requestHandler = getRequestHandler(request, context);
@@ -300,7 +305,7 @@ public class HttpAsyncService implements
&& state.getRequestQueue().isEmpty()
&& !conn.isDataAvailable()) {
- final HttpResponse ack = this.responseFactory.newHttpResponse(HttpStatus.SC_CONTINUE, context);
+ final HttpResponse ack = this.responseFactory.newHttpResponse(HttpStatus.SC_CONTINUE);
if (this.expectationVerifier != null) {
final HttpAsyncExchange httpAsyncExchange = new HttpAsyncExchangeImpl(
incoming, request, ack, state, conn, context);
@@ -382,7 +387,7 @@ public class HttpAsyncService implements
state.setResponseState(MessageState.INIT);
if (requestResult != null) {
final HttpAsyncRequestHandler<Object> handler = pipelineEntry.getHandler();
- final HttpResponse response = this.responseFactory.newHttpResponse(HttpStatus.SC_OK, context);
+ final HttpResponse response = this.responseFactory.newHttpResponse(HttpStatus.SC_OK);
final HttpAsyncExchangeImpl httpExchange = new HttpAsyncExchangeImpl(
null, request, response, state, conn, context);
conn.suspendOutput();
@@ -566,7 +571,7 @@ public class HttpAsyncService implements
if (message == null) {
message = ex.toString();
}
- final HttpResponse response = this.responseFactory.newHttpResponse(code, context);
+ final HttpResponse response = this.responseFactory.newHttpResponse(code);
return new ErrorResponseProducer(response,
new NStringEntity(message, ContentType.DEFAULT_TEXT), false);
}
@@ -600,7 +605,7 @@ public class HttpAsyncService implements
}
private boolean canResponseHaveBody(final HttpRequest request, final HttpResponse response) {
- if (request != null && "HEAD".equalsIgnoreCase(request.getRequestLine().getMethod())) {
+ if (request != null && "HEAD".equalsIgnoreCase(request.getMethod())) {
return false;
}
final int status = response.getCode();
@@ -885,13 +890,15 @@ public class HttpAsyncService implements
buf.append(this.requestState);
if (this.incoming != null) {
buf.append(" ");
- buf.append(this.incoming.getRequest().getRequestLine());
+ buf.append(this.incoming.getRequest().getMethod());
+ buf.append(" ");
+ buf.append(this.incoming.getRequest().getUri());
}
buf.append("; outgoing ");
buf.append(this.responseState);
if (this.outgoing != null) {
buf.append(" ");
- buf.append(this.outgoing.getResponse().getStatusLine());
+ buf.append(this.outgoing.getResponse().getCode());
}
buf.append("]");
return buf.toString();
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NHttpConnectionBase.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NHttpConnectionBase.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NHttpConnectionBase.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NHttpConnectionBase.java Tue Mar 15 20:35:34 2016
@@ -43,6 +43,7 @@ import org.apache.hc.core5.http.HttpHead
import org.apache.hc.core5.http.HttpMessage;
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpResponse;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.TrailerSupplier;
import org.apache.hc.core5.http.config.MessageConstraints;
import org.apache.hc.core5.http.impl.BasicHttpTransportMetrics;
@@ -83,6 +84,7 @@ class NHttpConnectionBase implements NHt
volatile HttpResponse response;
volatile int status;
+ volatile ProtocolVersion version;
NHttpConnectionBase(
final IOSession session,
@@ -147,6 +149,14 @@ class NHttpConnectionBase implements NHt
return this.context;
}
+ /**
+ * @since 5.0
+ */
+ @Override
+ public ProtocolVersion getProtocolVersion() {
+ return this.version;
+ }
+
@Override
public HttpRequest getHttpRequest() {
return this.request;
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NullRequestHandler.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NullRequestHandler.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NullRequestHandler.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/NullRequestHandler.java Tue Mar 15 20:35:34 2016
@@ -55,7 +55,7 @@ class NullRequestHandler implements Http
final HttpAsyncExchange httpexchange,
final HttpContext context) {
final HttpResponse response = httpexchange.getResponse();
- response.setStatusCode(HttpStatus.SC_NOT_IMPLEMENTED);
+ response.setCode(HttpStatus.SC_NOT_IMPLEMENTED);
httpexchange.submitResponse(new ErrorResponseProducer(
response, new NStringEntity("Service not implemented", ContentType.TEXT_PLAIN), true));
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/PipeliningClientExchangeHandler.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/PipeliningClientExchangeHandler.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/PipeliningClientExchangeHandler.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/PipeliningClientExchangeHandler.java Tue Mar 15 20:35:34 2016
@@ -43,6 +43,7 @@ import org.apache.hc.core5.http.Connecti
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpResponse;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.nio.ContentDecoder;
import org.apache.hc.core5.http.nio.ContentEncoder;
import org.apache.hc.core5.http.nio.HttpAsyncClientExchangeHandler;
@@ -216,6 +217,10 @@ public class PipeliningClientExchangeHan
this.localContext.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
this.localContext.setAttribute(HttpCoreContext.HTTP_RESPONSE, response);
+ final ProtocolVersion transportVersion = response.getVersion();
+ if (transportVersion != null) {
+ this.localContext.setProtocolVersion(transportVersion);
+ }
this.httppocessor.process(response, this.localContext);
responseConsumer.responseReceived(response);
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/SessionHttpContext.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/SessionHttpContext.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/SessionHttpContext.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/SessionHttpContext.java Tue Mar 15 20:35:34 2016
@@ -27,6 +27,8 @@
package org.apache.hc.core5.http.impl.nio;
+import org.apache.hc.core5.http.HttpVersion;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.protocol.HttpContext;
import org.apache.hc.core5.reactor.IOSession;
@@ -40,6 +42,15 @@ class SessionHttpContext implements Http
}
@Override
+ public ProtocolVersion getProtocolVersion() {
+ return HttpVersion.DEFAULT;
+ }
+
+ @Override
+ public void setProtocolVersion(final ProtocolVersion version) {
+ }
+
+ @Override
public Object getAttribute(final String id) {
return this.iosession.getAttribute(id);
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/UriHttpAsyncRequestHandlerMapper.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/UriHttpAsyncRequestHandlerMapper.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/UriHttpAsyncRequestHandlerMapper.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/UriHttpAsyncRequestHandlerMapper.java Tue Mar 15 20:35:34 2016
@@ -89,7 +89,7 @@ public class UriHttpAsyncRequestHandlerM
* Extracts request path from the given {@link HttpRequest}
*/
protected String getRequestPath(final HttpRequest request) {
- String uriPath = request.getRequestLine().getUri();
+ String uriPath = request.getUri();
int index = uriPath.indexOf("?");
if (index != -1) {
uriPath = uriPath.substring(0, index);
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/UriHttpRequestHandlerMapper.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/UriHttpRequestHandlerMapper.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/UriHttpRequestHandlerMapper.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/UriHttpRequestHandlerMapper.java Tue Mar 15 20:35:34 2016
@@ -90,7 +90,7 @@ public class UriHttpRequestHandlerMapper
* Extracts request path from the given {@link HttpRequest}
*/
protected String getRequestPath(final HttpRequest request) {
- String uriPath = request.getRequestLine().getUri();
+ String uriPath = request.getUri();
int index = uriPath.indexOf("?");
if (index != -1) {
uriPath = uriPath.substring(0, index);
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpRequest.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpRequest.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpRequest.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpRequest.java Tue Mar 15 20:35:34 2016
@@ -29,9 +29,7 @@ package org.apache.hc.core5.http.message
import org.apache.hc.core5.annotation.NotThreadSafe;
import org.apache.hc.core5.http.HttpRequest;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.RequestLine;
import org.apache.hc.core5.util.Args;
/**
@@ -43,10 +41,10 @@ import org.apache.hc.core5.util.Args;
public class BasicHttpRequest extends AbstractHttpMessage implements HttpRequest {
private static final long serialVersionUID = 1L;
- private final String method;
- private final String uri;
- private RequestLine requestline;
+ private final String method;
+ private String uri;
+ private ProtocolVersion version;
/**
* Creates an instance of this class using the given request method
@@ -59,54 +57,26 @@ public class BasicHttpRequest extends Ab
super();
this.method = Args.notNull(method, "Method name");
this.uri = Args.notNull(uri, "Request URI");
- this.requestline = null;
}
- /**
- * Creates an instance of this class using the given request method, URI
- * and the HTTP protocol version.
- *
- * @param method request method.
- * @param uri request URI.
- * @param ver HTTP protocol version.
- */
- public BasicHttpRequest(final String method, final String uri, final ProtocolVersion ver) {
- this(new BasicRequestLine(method, uri, ver));
+ @Override
+ public void setVersion(final ProtocolVersion version) {
+ this.version = version;
}
- /**
- * Creates an instance of this class using the given request line.
- *
- * @param requestline request line.
- */
- public BasicHttpRequest(final RequestLine requestline) {
- super();
- this.requestline = Args.notNull(requestline, "Request line");
- this.method = requestline.getMethod();
- this.uri = requestline.getUri();
+ @Override
+ public ProtocolVersion getVersion() {
+ return this.version;
}
- /**
- * Returns the HTTP protocol version to be used for this request.
- *
- * @see #BasicHttpRequest(String, String)
- */
@Override
- public ProtocolVersion getProtocolVersion() {
- return getRequestLine().getProtocolVersion();
+ public String getMethod() {
+ return this.method;
}
- /**
- * Returns the request line of this request.
- *
- * @see #BasicHttpRequest(String, String)
- */
@Override
- public RequestLine getRequestLine() {
- if (this.requestline == null) {
- this.requestline = new BasicRequestLine(this.method, this.uri, HttpVersion.HTTP_1_1);
- }
- return this.requestline;
+ public String getUri() {
+ return this.uri;
}
@Override
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpResponse.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpResponse.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpResponse.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpResponse.java Tue Mar 15 20:35:34 2016
@@ -31,10 +31,9 @@ import java.util.Locale;
import org.apache.hc.core5.annotation.NotThreadSafe;
import org.apache.hc.core5.http.HttpResponse;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.ReasonPhraseCatalog;
-import org.apache.hc.core5.http.StatusLine;
+import org.apache.hc.core5.http.impl.EnglishReasonPhraseCatalog;
import org.apache.hc.core5.util.Args;
/**
@@ -48,111 +47,70 @@ import org.apache.hc.core5.util.Args;
public class BasicHttpResponse extends AbstractHttpMessage implements HttpResponse {
private static final long serialVersionUID = 1L;
- private StatusLine statusline;
- private ProtocolVersion ver;
- private int code;
- private String reasonPhrase;
+
private final ReasonPhraseCatalog reasonCatalog;
- private Locale locale;
+
+ private ProtocolVersion version;
+ private Locale locale;
+ private int code;
+ private String reasonPhrase;
/**
* Creates a new response.
- * This is the constructor to which all others map.
*
- * @param statusline the status line
+ * @param code the status code
* @param catalog the reason phrase catalog, or
* {@code null} to disable automatic
* reason phrase lookup
* @param locale the locale for looking up reason phrases, or
* {@code null} for the system locale
*/
- public BasicHttpResponse(final StatusLine statusline,
- final ReasonPhraseCatalog catalog,
- final Locale locale) {
+ public BasicHttpResponse(
+ final int code,
+ final ReasonPhraseCatalog catalog,
+ final Locale locale) {
super();
- this.statusline = Args.notNull(statusline, "Status line");
- this.ver = statusline.getProtocolVersion();
- this.code = statusline.getStatusCode();
- this.reasonPhrase = statusline.getReasonPhrase();
- this.reasonCatalog = catalog;
+ this.code = Args.positive(code, "Status code");
+ this.reasonCatalog = catalog != null ? catalog : EnglishReasonPhraseCatalog.INSTANCE;
this.locale = locale;
}
/**
- * Creates a response from a status line.
- * The response will not have a reason phrase catalog and
- * use the system default locale.
- *
- * @param statusline the status line
- */
- public BasicHttpResponse(final StatusLine statusline) {
- super();
- this.statusline = Args.notNull(statusline, "Status line");
- this.ver = statusline.getProtocolVersion();
- this.code = statusline.getStatusCode();
- this.reasonPhrase = statusline.getReasonPhrase();
- this.reasonCatalog = null;
- this.locale = null;
- }
-
- /**
- * Creates a response from elements of a status line.
- * The response will not have a reason phrase catalog and
- * use the system default locale.
+ * Creates a new response.
*
- * @param ver the protocol version of the response
- * @param code the status code of the response
- * @param reason the reason phrase to the status code, or
- * {@code null}
+ * @param code the status code of the response
+ * @param reasonPhrase the reason phrase to the status code, or {@code null}
*/
- public BasicHttpResponse(final ProtocolVersion ver,
- final int code,
- final String reason) {
- super();
- Args.notNegative(code, "Status code");
- this.statusline = null;
- this.ver = ver;
- this.code = code;
- this.reasonPhrase = reason;
- this.reasonCatalog = null;
- this.locale = null;
+ public BasicHttpResponse(final int code, final String reasonPhrase) {
+ this.code = Args.positive(code, "Status code");
+ this.reasonPhrase = reasonPhrase;
+ this.reasonCatalog = EnglishReasonPhraseCatalog.INSTANCE;
}
/**
- * Creates a response from elements of a status line.
- * The response will not have a reason phrase catalog and
- * use the system default locale.
+ * Creates a new response.
*
- * @param code the status code of the response
- * @param reason the reason phrase to the status code, or
- * {@code null}
+ * @param code the status code of the response
*/
- public BasicHttpResponse(final int code, final String reason) {
- this(HttpVersion.HTTP_1_1, code, reason);
+ public BasicHttpResponse(final int code) {
+ this.code = Args.positive(code, "Status code");
+ this.reasonPhrase = null;
+ this.reasonCatalog = EnglishReasonPhraseCatalog.INSTANCE;
}
- // non-javadoc, see interface HttpMessage
@Override
- public ProtocolVersion getProtocolVersion() {
- return this.ver;
+ public void setVersion(final ProtocolVersion version) {
+ this.version = version;
}
- // non-javadoc, see interface HttpResponse
@Override
- public int getCode() {
- return getStatusLine().getStatusCode();
+ public ProtocolVersion getVersion() {
+ return this.version;
}
- // non-javadoc, see interface HttpResponse
@Override
- public StatusLine getStatusLine() {
- if (this.statusline == null) {
- this.statusline = new BasicStatusLine(
- this.ver != null ? this.ver : HttpVersion.HTTP_1_1,
- this.code,
- this.reasonPhrase != null ? this.reasonPhrase : getReason(this.code));
- }
- return this.statusline;
+ public int getCode() {
+ return this.code;
}
@Override
@@ -160,56 +118,26 @@ public class BasicHttpResponse extends A
return this.locale;
}
- // non-javadoc, see interface HttpResponse
@Override
- public void setStatusLine(final StatusLine statusline) {
- this.statusline = Args.notNull(statusline, "Status line");
- this.ver = statusline.getProtocolVersion();
- this.code = statusline.getStatusCode();
- this.reasonPhrase = statusline.getReasonPhrase();
- }
-
- // non-javadoc, see interface HttpResponse
- @Override
- public void setStatusLine(final ProtocolVersion ver, final int code) {
- Args.notNegative(code, "Status code");
- this.statusline = null;
- this.ver = ver;
+ public void setCode(final int code) {
+ Args.positive(code, "Status code");
this.code = code;
this.reasonPhrase = null;
}
- // non-javadoc, see interface HttpResponse
@Override
- public void setStatusLine(
- final ProtocolVersion ver, final int code, final String reason) {
- Args.notNegative(code, "Status code");
- this.statusline = null;
- this.ver = ver;
- this.code = code;
- this.reasonPhrase = reason;
- }
-
- // non-javadoc, see interface HttpResponse
- @Override
- public void setStatusCode(final int code) {
- Args.notNegative(code, "Status code");
- this.statusline = null;
- this.code = code;
- this.reasonPhrase = null;
+ public String getReasonPhrase() {
+ return this.reasonPhrase != null ? this.reasonPhrase : getReason(this.code);
}
- // non-javadoc, see interface HttpResponse
@Override
public void setReasonPhrase(final String reason) {
- this.statusline = null;
this.reasonPhrase = reason;
}
@Override
public void setLocale(final Locale locale) {
this.locale = Args.notNull(locale, "Locale");
- this.statusline = null;
}
/**
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineFormatter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineFormatter.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineFormatter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineFormatter.java Tue Mar 15 20:35:34 2016
@@ -30,8 +30,6 @@ package org.apache.hc.core5.http.message
import org.apache.hc.core5.annotation.Immutable;
import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.RequestLine;
-import org.apache.hc.core5.http.StatusLine;
import org.apache.hc.core5.util.Args;
import org.apache.hc.core5.util.CharArrayBuffer;
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineParser.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicLineParser.java Tue Mar 15 20:35:34 2016
@@ -34,8 +34,6 @@ import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.ParseException;
import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.RequestLine;
-import org.apache.hc.core5.http.StatusLine;
import org.apache.hc.core5.util.Args;
import org.apache.hc.core5.util.CharArrayBuffer;
import org.apache.hc.core5.util.TextUtils;
@@ -161,7 +159,7 @@ public class BasicLineParser implements
if (!cursor.atEnd()) {
throw new ParseException("Invalid request line: " + buffer.toString());
}
- return new BasicRequestLine(method, uri, ver);
+ return new RequestLine(method, uri, ver);
}
@Override
@@ -185,7 +183,7 @@ public class BasicLineParser implements
throw new ParseException("Status line contains invalid status code: " + buffer.toString());
}
final String text = buffer.substringTrimmed(cursor.getPos(), cursor.getUpperBound());
- return new BasicStatusLine(ver, statusCode, text);
+ return new StatusLine(ver, statusCode, text);
}
@Override
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineFormatter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineFormatter.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineFormatter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineFormatter.java Tue Mar 15 20:35:34 2016
@@ -28,8 +28,6 @@
package org.apache.hc.core5.http.message;
import org.apache.hc.core5.http.Header;
-import org.apache.hc.core5.http.RequestLine;
-import org.apache.hc.core5.http.StatusLine;
import org.apache.hc.core5.util.CharArrayBuffer;
/**
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineParser.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/LineParser.java Tue Mar 15 20:35:34 2016
@@ -29,8 +29,6 @@ package org.apache.hc.core5.http.message
import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.ParseException;
-import org.apache.hc.core5.http.RequestLine;
-import org.apache.hc.core5.http.StatusLine;
import org.apache.hc.core5.util.CharArrayBuffer;
/**
Copied: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java (from r1734704, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicRequestLine.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java?p2=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java&p1=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicRequestLine.java&r1=1734704&r2=1735164&rev=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicRequestLine.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java Tue Mar 15 20:35:34 2016
@@ -31,16 +31,15 @@ import java.io.Serializable;
import org.apache.hc.core5.annotation.Immutable;
import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.RequestLine;
import org.apache.hc.core5.util.Args;
/**
- * Basic implementation of {@link RequestLine}.
+ * HTTP/1.1 request line.
*
* @since 4.0
*/
@Immutable
-public class BasicRequestLine implements RequestLine, Serializable {
+public final class RequestLine implements Serializable {
private static final long serialVersionUID = 2810581718468737193L;
@@ -48,26 +47,23 @@ public class BasicRequestLine implements
private final String method;
private final String uri;
- public BasicRequestLine(final String method,
- final String uri,
- final ProtocolVersion version) {
+ public RequestLine(final String method,
+ final String uri,
+ final ProtocolVersion version) {
super();
this.method = Args.notNull(method, "Method");
this.uri = Args.notNull(uri, "URI");
this.protoversion = Args.notNull(version, "Version");
}
- @Override
public String getMethod() {
return this.method;
}
- @Override
public ProtocolVersion getProtocolVersion() {
return this.protoversion;
}
- @Override
public String getUri() {
return this.uri;
}
Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Copied: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java (from r1734704, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicStatusLine.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java?p2=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java&p1=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicStatusLine.java&r1=1734704&r2=1735164&rev=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicStatusLine.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java Tue Mar 15 20:35:34 2016
@@ -31,21 +31,18 @@ import java.io.Serializable;
import org.apache.hc.core5.annotation.Immutable;
import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.StatusLine;
import org.apache.hc.core5.util.Args;
/**
- * Basic implementation of {@link StatusLine}
+ * HTTP/1.1 status line.
*
* @since 4.0
*/
@Immutable
-public class BasicStatusLine implements StatusLine, Serializable {
+public final class StatusLine implements Serializable {
private static final long serialVersionUID = -2443303766890459269L;
- // ----------------------------------------------------- Instance Variables
-
/** The protocol version. */
private final ProtocolVersion protoVersion;
@@ -55,7 +52,6 @@ public class BasicStatusLine implements
/** The reason phrase. */
private final String reasonPhrase;
- // ----------------------------------------------------------- Constructors
/**
* Creates a new status line with the given version, status, and reason.
*
@@ -64,27 +60,22 @@ public class BasicStatusLine implements
* @param reasonPhrase the reason phrase to the status code, or
* {@code null}
*/
- public BasicStatusLine(final ProtocolVersion version, final int statusCode,
- final String reasonPhrase) {
+ public StatusLine(final ProtocolVersion version, final int statusCode,
+ final String reasonPhrase) {
super();
this.protoVersion = Args.notNull(version, "Version");
this.statusCode = Args.notNegative(statusCode, "Status code");
this.reasonPhrase = reasonPhrase;
}
- // --------------------------------------------------------- Public Methods
-
- @Override
public int getStatusCode() {
return this.statusCode;
}
- @Override
public ProtocolVersion getProtocolVersion() {
return this.protoVersion;
}
- @Override
public String getReasonPhrase() {
return this.reasonPhrase;
}
Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/StatusLine.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/BasicHttpContext.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/BasicHttpContext.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/BasicHttpContext.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/BasicHttpContext.java Tue Mar 15 20:35:34 2016
@@ -31,6 +31,8 @@ import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import org.apache.hc.core5.annotation.ThreadSafe;
+import org.apache.hc.core5.http.HttpVersion;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.util.Args;
/**
@@ -47,6 +49,8 @@ public class BasicHttpContext implements
private final HttpContext parentContext;
private final Map<String, Object> map;
+ private ProtocolVersion version;
+
public BasicHttpContext() {
this(null);
}
@@ -84,6 +88,21 @@ public class BasicHttpContext implements
}
/**
+ * @since 5.0
+ */
+ @Override
+ public ProtocolVersion getProtocolVersion() {
+ return this.version != null ? this.version : HttpVersion.DEFAULT;
+ }
+
+ /**
+ * @since 5.0
+ */
+ public void setProtocolVersion(final ProtocolVersion version) {
+ this.version = version;
+ }
+
+ /**
* @since 4.2
*/
public void clear() {
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpContext.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpContext.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpContext.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpContext.java Tue Mar 15 20:35:34 2016
@@ -27,6 +27,8 @@
package org.apache.hc.core5.http.protocol;
+import org.apache.hc.core5.http.ProtocolVersion;
+
/**
* HttpContext represents execution state of an HTTP process. It is a structure
* that can be used to map an attribute name to an attribute value.
@@ -49,6 +51,20 @@ public interface HttpContext {
public static final String RESERVED_PREFIX = "http.";
/**
+ * Returns protocol version used in this context.
+ *
+ * @since 5.0
+ */
+ ProtocolVersion getProtocolVersion();
+
+ /**
+ * Sets protocol version used in this context.
+ *
+ * @since 5.0
+ */
+ void setProtocolVersion(ProtocolVersion version);
+
+ /**
* Obtains attribute with the given name.
*
* @param id the attribute name.
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpCoreContext.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpCoreContext.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpCoreContext.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpCoreContext.java Tue Mar 15 20:35:34 2016
@@ -32,6 +32,7 @@ import org.apache.hc.core5.http.HttpConn
import org.apache.hc.core5.http.HttpHost;
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpResponse;
+import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.util.Args;
/**
@@ -47,19 +48,19 @@ public class HttpCoreContext implements
* Attribute name of a {@link org.apache.hc.core5.http.HttpConnection} object that
* represents the actual HTTP connection.
*/
- public static final String HTTP_CONNECTION = "http.connection";
+ public static final String HTTP_CONNECTION = HttpContext.RESERVED_PREFIX + "connection";
/**
* Attribute name of a {@link org.apache.hc.core5.http.HttpRequest} object that
* represents the actual HTTP request.
*/
- public static final String HTTP_REQUEST = "http.request";
+ public static final String HTTP_REQUEST = HttpContext.RESERVED_PREFIX + "request";
/**
* Attribute name of a {@link org.apache.hc.core5.http.HttpResponse} object that
* represents the actual HTTP response.
*/
- public static final String HTTP_RESPONSE = "http.response";
+ public static final String HTTP_RESPONSE = HttpContext.RESERVED_PREFIX + "response";
/**
* Attribute name of a {@link org.apache.hc.core5.http.HttpHost} object that
@@ -91,6 +92,22 @@ public class HttpCoreContext implements
this.context = new BasicHttpContext();
}
+ /**
+ * @since 5.0
+ */
+ @Override
+ public ProtocolVersion getProtocolVersion() {
+ return this.context.getProtocolVersion();
+ }
+
+ /**
+ * @since 5.0
+ */
+ @Override
+ public void setProtocolVersion(final ProtocolVersion version) {
+ this.context.setProtocolVersion(version);
+ }
+
@Override
public Object getAttribute(final String id) {
return context.getAttribute(id);
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestConnControl.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestConnControl.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestConnControl.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestConnControl.java Tue Mar 15 20:35:34 2016
@@ -57,7 +57,7 @@ public class RequestConnControl implemen
throws HttpException, IOException {
Args.notNull(request, "HTTP request");
- final String method = request.getRequestLine().getMethod();
+ final String method = request.getMethod();
if (method.equalsIgnoreCase("CONNECT")) {
return;
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestContent.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestContent.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestContent.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestContent.java Tue Mar 15 20:35:34 2016
@@ -100,7 +100,7 @@ public class RequestContent implements H
}
final HttpEntity entity = request.getEntity();
if (entity != null) {
- final ProtocolVersion ver = request.getRequestLine().getProtocolVersion();
+ final ProtocolVersion ver = context.getProtocolVersion();
// Must specify a transfer encoding or a content length
if (entity.isChunked() || entity.getContentLength() < 0) {
if (ver.lessEquals(HttpVersion.HTTP_1_0)) {
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestExpectContinue.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestExpectContinue.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestExpectContinue.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestExpectContinue.java Tue Mar 15 20:35:34 2016
@@ -62,7 +62,7 @@ public class RequestExpectContinue imple
if (!request.containsHeader(HttpHeaders.EXPECT)) {
final HttpEntity entity = request.getEntity();
if (entity != null) {
- final ProtocolVersion ver = request.getRequestLine().getProtocolVersion();
+ final ProtocolVersion ver = context.getProtocolVersion();
// Do not send the expect header if request body is known to be empty
if (entity.getContentLength() != 0 && !ver.lessEquals(HttpVersion.HTTP_1_0)) {
request.addHeader(HttpHeaders.EXPECT, HeaderElements.CONTINUE);
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestTargetHost.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestTargetHost.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestTargetHost.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestTargetHost.java Tue Mar 15 20:35:34 2016
@@ -62,8 +62,8 @@ public class RequestTargetHost implement
final HttpCoreContext coreContext = HttpCoreContext.adapt(context);
- final ProtocolVersion ver = request.getRequestLine().getProtocolVersion();
- final String method = request.getRequestLine().getMethod();
+ final ProtocolVersion ver = coreContext.getProtocolVersion();
+ final String method = request.getMethod();
if (method.equalsIgnoreCase("CONNECT") && ver.lessEquals(HttpVersion.HTTP_1_0)) {
extracted();
return;
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestValidateHost.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestValidateHost.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestValidateHost.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestValidateHost.java Tue Mar 15 20:35:34 2016
@@ -56,7 +56,7 @@ public class RequestValidateHost impleme
public void process(final HttpRequest request, final HttpContext context)
throws HttpException, IOException {
Args.notNull(request, "HTTP request");
- final ProtocolVersion version = request.getProtocolVersion();
+ final ProtocolVersion version = request.getVersion() != null ? request.getVersion() : HttpVersion.HTTP_1_1;
if (version.greaterEquals(HttpVersion.HTTP_1_1)) {
final int n = request.containsHeaders(HttpHeaders.HOST);
if (n == 0) {
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseConnControl.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseConnControl.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseConnControl.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseConnControl.java Tue Mar 15 20:35:34 2016
@@ -85,8 +85,8 @@ public class ResponseConnControl impleme
// Always drop connection for HTTP/1.0 responses and below
// if the content body cannot be correctly delimited
final HttpEntity entity = response.getEntity();
+ final ProtocolVersion ver = context.getProtocolVersion();
if (entity != null) {
- final ProtocolVersion ver = response.getStatusLine().getProtocolVersion();
if (entity.getContentLength() < 0 &&
(!entity.isChunked() || ver.lessEquals(HttpVersion.HTTP_1_0))) {
response.setHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE);
@@ -99,7 +99,7 @@ public class ResponseConnControl impleme
final Header header = request.getFirstHeader(HttpHeaders.CONNECTION);
if (header != null) {
response.setHeader(HttpHeaders.CONNECTION, header.getValue());
- } else if (request.getProtocolVersion().lessEquals(HttpVersion.HTTP_1_0)) {
+ } else if (ver.lessEquals(HttpVersion.HTTP_1_0)) {
response.setHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE);
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseContent.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseContent.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseContent.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseContent.java Tue Mar 15 20:35:34 2016
@@ -106,7 +106,7 @@ public class ResponseContent implements
throw new ProtocolException("Content-Length header already present");
}
}
- final ProtocolVersion ver = response.getStatusLine().getProtocolVersion();
+ final ProtocolVersion ver = context.getProtocolVersion();
final HttpEntity entity = response.getEntity();
if (entity != null) {
final long len = entity.getContentLength();
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestBasicRequest.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestBasicRequest.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestBasicRequest.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestBasicRequest.java Tue Mar 15 20:35:34 2016
@@ -28,7 +28,6 @@
package org.apache.hc.core5.http.impl;
import org.apache.hc.core5.http.HttpRequest;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.message.BasicHttpRequest;
import org.junit.Assert;
import org.junit.Test;
@@ -38,7 +37,7 @@ public class TestBasicRequest {
@Test
public void testConstructor() throws Exception {
new BasicHttpRequest("GET", "/stuff");
- new BasicHttpRequest("GET", "/stuff", HttpVersion.HTTP_1_1);
+ new BasicHttpRequest("GET", "/stuff");
try {
new BasicHttpRequest(null, "/stuff");
Assert.fail("IllegalArgumentException should have been thrown");
@@ -54,11 +53,10 @@ public class TestBasicRequest {
}
@Test
- public void testRequestLine() throws Exception {
- final HttpRequest request = new BasicHttpRequest("GET", "/stuff", HttpVersion.HTTP_1_0);
- Assert.assertEquals("GET", request.getRequestLine().getMethod());
- Assert.assertEquals("/stuff", request.getRequestLine().getUri());
- Assert.assertEquals(HttpVersion.HTTP_1_0, request.getRequestLine().getProtocolVersion());
+ public void testBasics() throws Exception {
+ final HttpRequest request = new BasicHttpRequest("GET", "/stuff");
+ Assert.assertEquals("GET", request.getMethod());
+ Assert.assertEquals("/stuff", request.getUri());
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultConnectionReuseStrategy.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultConnectionReuseStrategy.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultConnectionReuseStrategy.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultConnectionReuseStrategy.java Tue Mar 15 20:35:34 2016
@@ -61,26 +61,28 @@ public class TestDefaultConnectionReuseS
@Test
public void testNoContentLengthResponseHttp1_0() throws Exception {
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0, 200, "OK");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
}
@Test
public void testNoContentLengthResponseHttp1_1() throws Exception {
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
}
@Test
public void testChunkedContent() throws Exception {
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
Assert.assertTrue(reuseStrategy.keepAlive(null, response, context));
}
@Test
public void testIgnoreInvalidKeepAlive() throws Exception {
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0, 200, "OK");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Connection", "keep-alive");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
}
@@ -88,7 +90,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testExplicitClose() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "close");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
@@ -97,7 +99,8 @@ public class TestDefaultConnectionReuseS
@Test
public void testExplicitKeepAlive() throws Exception {
// Use HTTP 1.0
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0, 200, "OK");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Content-Length", "10");
response.addHeader("Connection", "keep-alive");
@@ -106,21 +109,15 @@ public class TestDefaultConnectionReuseS
@Test
public void testHTTP10Default() throws Exception {
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0, 200, "OK");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Content-Length", "10");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
}
@Test
public void testHTTP11Default() throws Exception {
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
- response.addHeader("Content-Length", "10");
- Assert.assertTrue(reuseStrategy.keepAlive(null, response, context));
- }
-
- @Test
- public void testFutureHTTP() throws Exception {
- final HttpResponse response = new BasicHttpResponse(new HttpVersion(3, 45), 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Content-Length", "10");
Assert.assertTrue(reuseStrategy.keepAlive(null, response, context));
}
@@ -128,7 +125,8 @@ public class TestDefaultConnectionReuseS
@Test
public void testBrokenConnectionDirective1() throws Exception {
// Use HTTP 1.0
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0, 200, "OK");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Content-Length", "10");
response.addHeader("Connection", "keep--alive");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
@@ -137,7 +135,8 @@ public class TestDefaultConnectionReuseS
@Test
public void testBrokenConnectionDirective2() throws Exception {
// Use HTTP 1.0
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0, 200, "OK");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Content-Length", "10");
response.addHeader("Connection", null);
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
@@ -146,7 +145,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testConnectionTokens1() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "yadda, cLOSe, dumdy");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
@@ -155,7 +154,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testConnectionTokens2() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "yadda, kEEP-alive, dumdy");
Assert.assertTrue(reuseStrategy.keepAlive(null, response, context));
@@ -164,7 +163,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testConnectionTokens3() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "yadda, keep-alive, close, dumdy");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
@@ -173,7 +172,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testConnectionTokens4() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "yadda, close, dumdy");
response.addHeader("Proxy-Connection", "keep-alive");
@@ -184,7 +183,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testConnectionTokens5() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "yadda, dumdy");
response.addHeader("Proxy-Connection", "close");
@@ -197,7 +196,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testConnectionTokens6() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "");
response.addHeader("Proxy-Connection", "close");
@@ -209,7 +208,7 @@ public class TestDefaultConnectionReuseS
@Test
public void testMultipleContentLength() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Content-Length", "10");
response.addHeader("Content-Length", "11");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
@@ -218,16 +217,15 @@ public class TestDefaultConnectionReuseS
@Test
public void testNoContentResponse() throws Exception {
// Use HTTP 1.1
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1,
- HttpStatus.SC_NO_CONTENT, "No Content");
+ final HttpResponse response = new BasicHttpResponse(HttpStatus.SC_NO_CONTENT, "No Content");
Assert.assertTrue(reuseStrategy.keepAlive(null, response, context));
}
@Test
public void testNoContentResponseHttp10() throws Exception {
// Use HTTP 1.0
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_0,
- HttpStatus.SC_NO_CONTENT, "No Content");
+ context.setProtocolVersion(HttpVersion.HTTP_1_0);
+ final HttpResponse response = new BasicHttpResponse(HttpStatus.SC_NO_CONTENT, "No Content");
Assert.assertFalse(reuseStrategy.keepAlive(null, response, context));
}
@@ -236,7 +234,7 @@ public class TestDefaultConnectionReuseS
final HttpRequest request = new BasicHttpRequest("GET", "/");
request.addHeader("Connection", "close");
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "keep-alive");
Assert.assertFalse(reuseStrategy.keepAlive(request, response, context));
@@ -247,7 +245,7 @@ public class TestDefaultConnectionReuseS
final HttpRequest request = new BasicHttpRequest("GET", "/");
request.addHeader("Connection", "blah, blah, blah");
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "keep-alive");
Assert.assertTrue(reuseStrategy.keepAlive(request, response, context));
@@ -260,7 +258,7 @@ public class TestDefaultConnectionReuseS
request.addHeader("Connection", "keep-alive");
request.addHeader("Connection", "close");
- final HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse response = new BasicHttpResponse(200, "OK");
response.addHeader("Transfer-Encoding", "chunked");
response.addHeader("Connection", "keep-alive");
Assert.assertFalse(reuseStrategy.keepAlive(request, response, context));
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultContentLengthStrategy.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultContentLengthStrategy.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultContentLengthStrategy.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/TestDefaultContentLengthStrategy.java Tue Mar 15 20:35:34 2016
@@ -29,7 +29,6 @@ package org.apache.hc.core5.http.impl;
import org.apache.hc.core5.http.ContentLengthStrategy;
import org.apache.hc.core5.http.HttpMessage;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.NotImplementedException;
import org.apache.hc.core5.http.ProtocolException;
import org.apache.hc.core5.http.ProtocolVersion;
@@ -44,8 +43,12 @@ public class TestDefaultContentLengthStr
private static final long serialVersionUID = 1L;
@Override
- public ProtocolVersion getProtocolVersion() {
- return HttpVersion.HTTP_1_1;
+ public ProtocolVersion getVersion() {
+ return null;
+ }
+
+ @Override
+ public void setVersion(final ProtocolVersion version) {
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestBHttpConnectionBase.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestBHttpConnectionBase.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestBHttpConnectionBase.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestBHttpConnectionBase.java Tue Mar 15 20:35:34 2016
@@ -38,7 +38,6 @@ import java.net.SocketTimeoutException;
import org.apache.hc.core5.http.ContentLengthStrategy;
import org.apache.hc.core5.http.HttpEntity;
import org.apache.hc.core5.http.HttpResponse;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.config.MessageConstraints;
import org.apache.hc.core5.http.message.BasicHttpResponse;
import org.junit.Assert;
@@ -157,7 +156,7 @@ public class TestBHttpConnectionBase {
@Test
public void testCreateEntityLengthDelimited() throws Exception {
final InputStream instream = Mockito.mock(InputStream.class);
- final HttpResponse message = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse message = new BasicHttpResponse(200, "OK");
message.addHeader("Content-Length", "10");
message.addHeader("Content-Type", "stuff");
message.addHeader("Content-Encoding", "chunked");
@@ -175,7 +174,7 @@ public class TestBHttpConnectionBase {
@Test
public void testCreateEntityInputChunked() throws Exception {
final InputStream instream = Mockito.mock(InputStream.class);
- final HttpResponse message = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse message = new BasicHttpResponse(200, "OK");
final HttpEntity entity = conn.createIncomingEntity(message, conn.inbuffer, instream, ContentLengthStrategy.CHUNKED);
Assert.assertNotNull(entity);
Assert.assertTrue(entity.isChunked());
@@ -188,7 +187,7 @@ public class TestBHttpConnectionBase {
@Test
public void testCreateEntityInputUndefined() throws Exception {
final InputStream instream = Mockito.mock(InputStream.class);
- final HttpResponse message = new BasicHttpResponse(HttpVersion.HTTP_1_1, 200, "OK");
+ final HttpResponse message = new BasicHttpResponse(200, "OK");
final HttpEntity entity = conn.createIncomingEntity(message, conn.inbuffer, instream, ContentLengthStrategy.UNDEFINED);
Assert.assertNotNull(entity);
Assert.assertFalse(entity.isChunked());
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java?rev=1735164&r1=1735163&r2=1735164&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestDefaultBHttpClientConnection.java Tue Mar 15 20:35:34 2016
@@ -35,7 +35,6 @@ import java.nio.charset.StandardCharsets
import org.apache.hc.core5.http.HttpEntity;
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpResponse;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.LengthRequiredException;
import org.apache.hc.core5.http.NotImplementedException;
import org.apache.hc.core5.http.config.MessageConstraints;
@@ -88,7 +87,6 @@ public class TestDefaultBHttpClientConne
final HttpResponse response = conn.receiveResponseHeader();
Assert.assertNotNull(response);
- Assert.assertEquals(HttpVersion.HTTP_1_1, response.getProtocolVersion());
Assert.assertEquals(200, response.getCode());
Assert.assertTrue(response.containsHeader("User-Agent"));
Assert.assertEquals(1, conn.getMetrics().getResponseCount());
@@ -107,7 +105,6 @@ public class TestDefaultBHttpClientConne
final HttpResponse response = conn.receiveResponseHeader();
Assert.assertNotNull(response);
- Assert.assertEquals(HttpVersion.HTTP_1_1, response.getProtocolVersion());
Assert.assertEquals(200, response.getCode());
Assert.assertTrue(response.containsHeader("Server"));
Assert.assertEquals(1, conn.getMetrics().getResponseCount());
@@ -137,7 +134,6 @@ public class TestDefaultBHttpClientConne
final HttpResponse response = conn.receiveResponseHeader();
Assert.assertNotNull(response);
- Assert.assertEquals(HttpVersion.HTTP_1_1, response.getProtocolVersion());
Assert.assertEquals(200, response.getCode());
Assert.assertTrue(response.containsHeader("Server"));
Assert.assertEquals(1, conn.getMetrics().getResponseCount());
@@ -167,7 +163,6 @@ public class TestDefaultBHttpClientConne
final HttpResponse response = conn.receiveResponseHeader();
Assert.assertNotNull(response);
- Assert.assertEquals(HttpVersion.HTTP_1_1, response.getProtocolVersion());
Assert.assertEquals(200, response.getCode());
Assert.assertTrue(response.containsHeader("Server"));
Assert.assertEquals(1, conn.getMetrics().getResponseCount());
@@ -188,7 +183,6 @@ public class TestDefaultBHttpClientConne
final HttpResponse response = conn.receiveResponseHeader();
Assert.assertNotNull(response);
- Assert.assertEquals(HttpVersion.HTTP_1_1, response.getProtocolVersion());
Assert.assertEquals(200, response.getCode());
Assert.assertTrue(response.containsHeader("Server"));
Assert.assertEquals(1, conn.getMetrics().getResponseCount());
@@ -208,7 +202,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("GET", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("GET", "/stuff");
request.addHeader("User-Agent", "test");
conn.sendRequestHeader(request);
@@ -228,7 +222,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
request.addHeader("Content-Length", "3");
request.setEntity(new StringEntity("123", ContentType.TEXT_PLAIN));
@@ -251,7 +245,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
request.addHeader("Transfer-Encoding", "chunked");
request.setEntity(new StringEntity("123", ContentType.TEXT_PLAIN));
@@ -275,7 +269,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
request.setEntity(new StringEntity("123", ContentType.TEXT_PLAIN));
@@ -292,7 +286,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
conn.sendRequestHeader(request);
@@ -313,7 +307,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
request.addHeader("Transfer-Encoding", "chunked");
final StringEntity entity = new StringEntity("123", ContentType.TEXT_PLAIN);
@@ -340,7 +334,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
request.addHeader("Content-Length", "3");
final StringEntity entity = new StringEntity("123", ContentType.TEXT_PLAIN);
@@ -367,7 +361,7 @@ public class TestDefaultBHttpClientConne
Assert.assertEquals(0, conn.getMetrics().getRequestCount());
- final HttpRequest request = new BasicHttpRequest("POST", "/stuff", HttpVersion.HTTP_1_1);
+ final HttpRequest request = new BasicHttpRequest("POST", "/stuff");
request.addHeader("User-Agent", "test");
request.addHeader("Content-Length", "3000");
final ByteArrayEntity entity = new ByteArrayEntity(new byte[3000], ContentType.TEXT_PLAIN);