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/11/14 19:11:26 UTC
svn commit: r1769681 - in /httpcomponents/httpcore/trunk:
httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/
httpcore5/src/examples/org/apache/hc/core5/http/examples/
httpcore5/src/main/java/org/apache/hc/core5/http/ httpcore5/src/main/java...
Author: olegk
Date: Mon Nov 14 19:11:26 2016
New Revision: 1769681
URL: http://svn.apache.org/viewvc?rev=1769681&view=rev
Log:
Improved request URI and message transport version handling
Modified:
httpcomponents/httpcore/trunk/httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/BenchmarkWorker.java
httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/AsyncReverseProxyExample.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequest.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestFactory.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseFactory.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpClientConnection.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpServerConnection.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpRequestFactory.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpResponseFactory.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestParser.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestWriter.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseParser.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseWriter.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ClientHttp1StreamHandler.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestFactory.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestParser.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestWriter.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseFactory.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseParser.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseWriter.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ServerHttp1StreamHandler.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/BasicHttpRequest.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/HttpRequestWrapper.java
httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java
httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestRequestParser.java
httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestResponseParser.java
Modified: httpcomponents/httpcore/trunk/httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/BenchmarkWorker.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/BenchmarkWorker.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/BenchmarkWorker.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5-ab/src/main/java/org/apache/hc/core5/http/benchmark/BenchmarkWorker.java Mon Nov 14 19:11:26 2016
@@ -236,7 +236,7 @@ class BenchmarkWorker implements Runnabl
private void verboseOutput(final ClassicHttpResponse response) {
if (config.getVerbosity() >= 3) {
- System.out.println(">> " + request.getMethod() + " " + request.getPath());
+ System.out.println(">> " + request.getMethod() + " " + request.getRequestUri());
final Header[] headers = request.getAllHeaders();
for (final Header header : headers) {
System.out.println(">> " + header.toString());
Modified: httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/AsyncReverseProxyExample.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/AsyncReverseProxyExample.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/AsyncReverseProxyExample.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/AsyncReverseProxyExample.java Mon Nov 14 19:11:26 2016
@@ -292,7 +292,7 @@ public class AsyncReverseProxyExample {
synchronized (exchangeState) {
System.out.println("[client->proxy] " + exchangeState.id + " " +
- incomingRequest.getMethod() + " " + incomingRequest.getPath());
+ incomingRequest.getMethod() + " " + incomingRequest.getRequestUri());
exchangeState.request = incomingRequest;
exchangeState.inputEnd = entityDetails == null;
exchangeState.responseMessageChannel = responseChannel;
@@ -496,7 +496,7 @@ public class AsyncReverseProxyExample {
}
System.out.println("[proxy->origin] " + exchangeState.id + " " +
- outgoingRequest.getMethod() + " " + outgoingRequest.getPath());
+ outgoingRequest.getMethod() + " " + outgoingRequest.getRequestUri());
channel.sendRequest(
outgoingRequest,
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequest.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequest.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequest.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequest.java Mon Nov 14 19:11:26 2016
@@ -93,6 +93,16 @@ public interface HttpRequest extends Htt
void setAuthority(String authority);
/**
+ * Returns request URI of this request message. It may be an absolute or relative URI.
+ * Applicable to HTTP/1.1 version or earlier.
+ *
+ * @return the request URI.
+ *
+ * @since 5.0
+ */
+ String getRequestUri();
+
+ /**
* Returns full request URI of this request message.
*
* @return the request URI.
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestFactory.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestFactory.java Mon Nov 14 19:11:26 2016
@@ -27,6 +27,8 @@
package org.apache.hc.core5.http;
+import java.net.URI;
+
/**
* A factory for {@link HttpRequest} objects.
*
@@ -37,7 +39,6 @@ public interface HttpRequestFactory<T ex
/**
* Creates request message with the given request method and request URI.
*
- * @param transportVersion protocol version this message was transmitted with.
* @param method the request method
* @param uri the request URI
*
@@ -45,7 +46,7 @@ public interface HttpRequestFactory<T ex
*
* @since 5.0
*/
- T newHttpRequest(ProtocolVersion transportVersion, String method, String uri) throws MethodNotSupportedException;
+ T newHttpRequest(String method, String uri) throws MethodNotSupportedException;
/**
* Creates request message with the given request method and request URI.
@@ -55,6 +56,6 @@ public interface HttpRequestFactory<T ex
*
* @return request message
*/
- T newHttpRequest(String method, String uri) throws MethodNotSupportedException;
+ T newHttpRequest(String method, URI uri) throws MethodNotSupportedException;
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseFactory.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseFactory.java Mon Nov 14 19:11:26 2016
@@ -37,7 +37,6 @@ public interface HttpResponseFactory<T e
/**
* Creates response message with the given code and reason phrase.
*
- * @param transportVersion protocol version this message was transmitted with.
* @param status the status code
* @param reasonPhrase the reason phrase
*
@@ -45,7 +44,7 @@ public interface HttpResponseFactory<T e
*
* @since 5.0
*/
- T newHttpResponse(ProtocolVersion transportVersion, int status, String reasonPhrase);
+ T newHttpResponse(int status, String reasonPhrase);
/**
* Creates a new response with the given code.
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpClientConnection.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpClientConnection.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpClientConnection.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpClientConnection.java Mon Nov 14 19:11:26 2016
@@ -39,7 +39,10 @@ import org.apache.hc.core5.http.ContentL
import org.apache.hc.core5.http.HttpEntity;
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpStatus;
+import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.LengthRequiredException;
+import org.apache.hc.core5.http.ProtocolVersion;
+import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.impl.DefaultContentLengthStrategy;
import org.apache.hc.core5.http.io.HttpClientConnection;
@@ -185,7 +188,11 @@ public class DefaultBHttpClientConnectio
public ClassicHttpResponse receiveResponseHeader() throws HttpException, IOException {
final SocketHolder socketHolder = ensureOpen();
final ClassicHttpResponse response = this.responseParser.parse(this.inbuffer, socketHolder.getInputStream());
- this.version = response.getVersion();
+ final ProtocolVersion transportVersion = response.getVersion();
+ if (transportVersion != null && transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
+ }
+ this.version = transportVersion;
onResponseReceived(response);
if (response.getCode() >= HttpStatus.SC_SUCCESS) {
incrementResponseCount();
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpServerConnection.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpServerConnection.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpServerConnection.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultBHttpServerConnection.java Mon Nov 14 19:11:26 2016
@@ -39,6 +39,9 @@ import org.apache.hc.core5.http.ContentL
import org.apache.hc.core5.http.HttpEntity;
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpStatus;
+import org.apache.hc.core5.http.HttpVersion;
+import org.apache.hc.core5.http.ProtocolVersion;
+import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.impl.DefaultContentLengthStrategy;
import org.apache.hc.core5.http.io.HttpMessageParser;
@@ -128,7 +131,11 @@ public class DefaultBHttpServerConnectio
public ClassicHttpRequest receiveRequestHeader() throws HttpException, IOException {
final SocketHolder socketHolder = ensureOpen();
final ClassicHttpRequest request = this.requestParser.parse(this.inbuffer, socketHolder.getInputStream());
- this.version = request.getVersion();
+ final ProtocolVersion transportVersion = request.getVersion();
+ if (transportVersion != null && transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
+ }
+ this.version = transportVersion;
onRequestReceived(request);
incrementRequestCount();
return request;
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpRequestFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpRequestFactory.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpRequestFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpRequestFactory.java Mon Nov 14 19:11:26 2016
@@ -27,12 +27,12 @@
package org.apache.hc.core5.http.impl.io;
+import java.net.URI;
+
import org.apache.hc.core5.annotation.Contract;
import org.apache.hc.core5.annotation.ThreadingBehavior;
import org.apache.hc.core5.http.ClassicHttpRequest;
import org.apache.hc.core5.http.HttpRequestFactory;
-import org.apache.hc.core5.http.MethodNotSupportedException;
-import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.message.BasicClassicHttpRequest;
/**
@@ -45,39 +45,13 @@ public class DefaultClassicHttpRequestFa
public static final DefaultClassicHttpRequestFactory INSTANCE = new DefaultClassicHttpRequestFactory();
- private static final String[] SUPPORTED_METHODS = {
- "GET",
- "POST",
- "PUT",
- "HEAD",
- "OPTIONS",
- "DELETE",
- "TRACE",
- "PATCH",
- "CONNECT"
- };
-
- private static boolean isOneOf(final String[] methods, final String method) {
- for (final String method2 : methods) {
- if (method2.equalsIgnoreCase(method)) {
- return true;
- }
- }
- return false;
- }
-
@Override
- public ClassicHttpRequest newHttpRequest(final ProtocolVersion transportVersion, final String method, final String uri) throws MethodNotSupportedException {
- if (isOneOf(SUPPORTED_METHODS, method)) {
- final ClassicHttpRequest request = new BasicClassicHttpRequest(method, uri);
- request.setVersion(transportVersion);
- return request;
- }
- throw new MethodNotSupportedException(method + " method not supported");
+ public ClassicHttpRequest newHttpRequest(final String method, final URI uri) {
+ return new BasicClassicHttpRequest(method, uri);
}
@Override
- public ClassicHttpRequest newHttpRequest(final String method, final String uri) throws MethodNotSupportedException {
+ public ClassicHttpRequest newHttpRequest(final String method, final String uri) {
return new BasicClassicHttpRequest(method, uri);
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpResponseFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpResponseFactory.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpResponseFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultClassicHttpResponseFactory.java Mon Nov 14 19:11:26 2016
@@ -31,7 +31,6 @@ import org.apache.hc.core5.annotation.Co
import org.apache.hc.core5.annotation.ThreadingBehavior;
import org.apache.hc.core5.http.ClassicHttpResponse;
import org.apache.hc.core5.http.HttpResponseFactory;
-import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.ReasonPhraseCatalog;
import org.apache.hc.core5.http.impl.EnglishReasonPhraseCatalog;
import org.apache.hc.core5.http.message.BasicClassicHttpResponse;
@@ -67,13 +66,8 @@ public class DefaultClassicHttpResponseF
}
@Override
- public ClassicHttpResponse newHttpResponse(final ProtocolVersion transportVersion, final int status, final String reasonPhrase) {
- final ClassicHttpResponse response = new BasicClassicHttpResponse(status, reasonPhrase);
- response.setVersion(transportVersion);
- if (reasonPhrase != null) {
- response.setReasonPhrase(reasonPhrase);
- }
- return response;
+ public ClassicHttpResponse newHttpResponse(final int status, final String reasonPhrase) {
+ return new BasicClassicHttpResponse(status, reasonPhrase);
}
@Override
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestParser.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestParser.java Mon Nov 14 19:11:26 2016
@@ -33,9 +33,6 @@ import org.apache.hc.core5.http.ClassicH
import org.apache.hc.core5.http.ConnectionClosedException;
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpRequestFactory;
-import org.apache.hc.core5.http.HttpVersion;
-import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.message.LineParser;
import org.apache.hc.core5.http.message.RequestLine;
@@ -93,11 +90,9 @@ public class DefaultHttpRequestParser ex
@Override
protected ClassicHttpRequest createMessage(final CharArrayBuffer buffer) throws IOException, HttpException {
final RequestLine requestLine = getLineParser().parseRequestLine(buffer);
- final ProtocolVersion transportVersion = requestLine.getProtocolVersion();
- if (transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
- throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
- }
- return this.requestFactory.newHttpRequest(requestLine.getProtocolVersion(), requestLine.getMethod(), requestLine.getUri());
+ final ClassicHttpRequest request = this.requestFactory.newHttpRequest(requestLine.getMethod(), requestLine.getUri());
+ request.setVersion(requestLine.getProtocolVersion());
+ return request;
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestWriter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestWriter.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestWriter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpRequestWriter.java Mon Nov 14 19:11:26 2016
@@ -62,12 +62,11 @@ public class DefaultHttpRequestWriter ex
@Override
protected void writeHeadLine(
final ClassicHttpRequest message, final CharArrayBuffer lineBuf) throws IOException {
- ProtocolVersion transportVersion = message.getVersion();
- if (transportVersion == null || transportVersion.greaterEquals(HttpVersion.HTTP_2_0)) {
- transportVersion = HttpVersion.HTTP_1_1;
- }
- getLineFormatter().formatRequestLine(lineBuf,
- new RequestLine(message.getMethod(), message.getPath(), transportVersion));
+ final ProtocolVersion transportVersion = message.getVersion();
+ getLineFormatter().formatRequestLine(lineBuf, new RequestLine(
+ message.getMethod(),
+ message.getRequestUri(),
+ transportVersion != null ? transportVersion : HttpVersion.HTTP_1_1));
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseParser.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseParser.java Mon Nov 14 19:11:26 2016
@@ -32,10 +32,7 @@ import java.io.IOException;
import org.apache.hc.core5.http.ClassicHttpResponse;
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpResponseFactory;
-import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.NoHttpResponseException;
-import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.message.LineParser;
import org.apache.hc.core5.http.message.StatusLine;
@@ -93,11 +90,9 @@ public class DefaultHttpResponseParser e
@Override
protected ClassicHttpResponse createMessage(final CharArrayBuffer buffer) throws IOException, HttpException {
final StatusLine statusline = getLineParser().parseStatusLine(buffer);
- final ProtocolVersion transportVersion = statusline.getProtocolVersion();
- if (transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
- throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
- }
- return this.responseFactory.newHttpResponse(transportVersion, statusline.getStatusCode(), statusline.getReasonPhrase());
+ final ClassicHttpResponse response = this.responseFactory.newHttpResponse(statusline.getStatusCode(), statusline.getReasonPhrase());
+ response.setVersion(statusline.getProtocolVersion());
+ return response;
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseWriter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseWriter.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseWriter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/DefaultHttpResponseWriter.java Mon Nov 14 19:11:26 2016
@@ -62,12 +62,11 @@ public class DefaultHttpResponseWriter e
@Override
protected void writeHeadLine(
final ClassicHttpResponse message, final CharArrayBuffer lineBuf) throws IOException {
- 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()));
+ final ProtocolVersion transportVersion = message.getVersion();
+ getLineFormatter().formatStatusLine(lineBuf, new StatusLine(
+ transportVersion != null ? transportVersion : HttpVersion.HTTP_1_1,
+ message.getCode(),
+ message.getReasonPhrase()));
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ClientHttp1StreamHandler.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ClientHttp1StreamHandler.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ClientHttp1StreamHandler.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ClientHttp1StreamHandler.java Mon Nov 14 19:11:26 2016
@@ -41,8 +41,10 @@ import org.apache.hc.core5.http.HttpHead
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpResponse;
import org.apache.hc.core5.http.HttpStatus;
+import org.apache.hc.core5.http.HttpVersion;
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.config.H1Config;
import org.apache.hc.core5.http.impl.LazyEntityDetails;
import org.apache.hc.core5.http.nio.AsyncClientExchangeHandler;
@@ -154,9 +156,10 @@ class ClientHttp1StreamHandler implement
private void commitRequest(final HttpRequest request, final EntityDetails entityDetails) throws IOException, HttpException {
if (requestCommitted.compareAndSet(false, true)) {
final ProtocolVersion transportVersion = request.getVersion();
- if (transportVersion != null) {
- context.setProtocolVersion(transportVersion);
+ if (transportVersion != null && transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
}
+ context.setProtocolVersion(transportVersion);
context.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
context.setAttribute(HttpCoreContext.HTTP_CONNECTION, connection);
httpProcessor.process(request, entityDetails, context);
@@ -209,6 +212,10 @@ class ClientHttp1StreamHandler implement
if (done.get() || responseState != MessageState.HEADERS) {
throw new ProtocolException("Unexpected message head");
}
+ final ProtocolVersion transportVersion = response.getVersion();
+ if (transportVersion != null && transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
+ }
final int status = response.getCode();
if (status < HttpStatus.SC_INFORMATIONAL) {
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestFactory.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestFactory.java Mon Nov 14 19:11:26 2016
@@ -27,12 +27,12 @@
package org.apache.hc.core5.http.impl.nio;
+import java.net.URI;
+
import org.apache.hc.core5.annotation.Contract;
import org.apache.hc.core5.annotation.ThreadingBehavior;
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpRequestFactory;
-import org.apache.hc.core5.http.MethodNotSupportedException;
-import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.message.BasicHttpRequest;
/**
@@ -45,39 +45,13 @@ public class DefaultHttpRequestFactory i
public static final DefaultHttpRequestFactory INSTANCE = new DefaultHttpRequestFactory();
- private static final String[] SUPPORTED_METHODS = {
- "GET",
- "POST",
- "PUT",
- "HEAD",
- "OPTIONS",
- "DELETE",
- "TRACE",
- "PATCH",
- "CONNECT"
- };
-
- private static boolean isOneOf(final String[] methods, final String method) {
- for (final String method2 : methods) {
- if (method2.equalsIgnoreCase(method)) {
- return true;
- }
- }
- return false;
- }
-
@Override
- public HttpRequest newHttpRequest(final ProtocolVersion transportVersion, final String method, final String uri) throws MethodNotSupportedException {
- if (isOneOf(SUPPORTED_METHODS, method)) {
- final HttpRequest request = new BasicHttpRequest(method, uri);
- request.setVersion(transportVersion);
- return request;
- }
- throw new MethodNotSupportedException(method + " method not supported");
+ public HttpRequest newHttpRequest(final String method, final URI uri) {
+ return new BasicHttpRequest(method, uri);
}
@Override
- public HttpRequest newHttpRequest(final String method, final String uri) throws MethodNotSupportedException {
+ public HttpRequest newHttpRequest(final String method, final String uri) {
return new BasicHttpRequest(method, uri);
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestParser.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestParser.java Mon Nov 14 19:11:26 2016
@@ -30,9 +30,6 @@ package org.apache.hc.core5.http.impl.ni
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpRequestFactory;
-import org.apache.hc.core5.http.HttpVersion;
-import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.message.LineParser;
import org.apache.hc.core5.http.message.RequestLine;
@@ -84,11 +81,9 @@ public class DefaultHttpRequestParser<T
@Override
protected T createMessage(final CharArrayBuffer buffer) throws HttpException {
final RequestLine requestLine = getLineParser().parseRequestLine(buffer);
- final ProtocolVersion transportVersion = requestLine.getProtocolVersion();
- if (transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
- throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
- }
- return this.requestFactory.newHttpRequest(transportVersion, requestLine.getMethod(), requestLine.getUri());
+ final T request = this.requestFactory.newHttpRequest(requestLine.getMethod(), requestLine.getUri());
+ request.setVersion(requestLine.getProtocolVersion());
+ return request;
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestWriter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestWriter.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestWriter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpRequestWriter.java Mon Nov 14 19:11:26 2016
@@ -65,12 +65,11 @@ public class DefaultHttpRequestWriter<T
@Override
protected void writeHeadLine(final T message, final CharArrayBuffer lineBuf) throws IOException {
lineBuf.clear();
- ProtocolVersion transportVersion = message.getVersion();
- if (transportVersion == null || transportVersion.greaterEquals(HttpVersion.HTTP_2_0)) {
- transportVersion = HttpVersion.HTTP_1_1;
- }
- getLineFormatter().formatRequestLine(lineBuf,
- new RequestLine(message.getMethod(), message.getPath(), transportVersion));
+ final ProtocolVersion transportVersion = message.getVersion();
+ getLineFormatter().formatRequestLine(lineBuf, new RequestLine(
+ message.getMethod(),
+ message.getRequestUri(),
+ transportVersion != null ? transportVersion : HttpVersion.HTTP_1_1));
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseFactory.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseFactory.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseFactory.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/DefaultHttpResponseFactory.java Mon Nov 14 19:11:26 2016
@@ -31,7 +31,6 @@ import org.apache.hc.core5.annotation.Co
import org.apache.hc.core5.annotation.ThreadingBehavior;
import org.apache.hc.core5.http.HttpResponse;
import org.apache.hc.core5.http.HttpResponseFactory;
-import org.apache.hc.core5.http.ProtocolVersion;
import org.apache.hc.core5.http.ReasonPhraseCatalog;
import org.apache.hc.core5.http.impl.EnglishReasonPhraseCatalog;
import org.apache.hc.core5.http.message.BasicHttpResponse;
@@ -67,13 +66,8 @@ public class DefaultHttpResponseFactory
}
@Override
- public HttpResponse newHttpResponse(final ProtocolVersion transportVersion, final int status, final String reasonPhrase) {
- final HttpResponse response = new BasicHttpResponse(status, reasonPhrase);
- response.setVersion(transportVersion);
- if (reasonPhrase != null) {
- response.setReasonPhrase(reasonPhrase);
- }
- return response;
+ public HttpResponse newHttpResponse(final int status, final String reasonPhrase) {
+ return new BasicHttpResponse(status, reasonPhrase);
}
@Override
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=1769681&r1=1769680&r2=1769681&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 Mon Nov 14 19:11:26 2016
@@ -30,9 +30,6 @@ package org.apache.hc.core5.http.impl.ni
import org.apache.hc.core5.http.HttpException;
import org.apache.hc.core5.http.HttpResponse;
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.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.message.LineParser;
import org.apache.hc.core5.http.message.StatusLine;
@@ -84,11 +81,9 @@ public class DefaultHttpResponseParser<T
@Override
protected T createMessage(final CharArrayBuffer buffer) throws HttpException {
final StatusLine statusLine = getLineParser().parseStatusLine(buffer);
- final ProtocolVersion transportVersion = statusLine.getProtocolVersion();
- if (transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
- throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
- }
- return this.responseFactory.newHttpResponse(transportVersion, statusLine.getStatusCode(), statusLine.getReasonPhrase());
+ final T response = this.responseFactory.newHttpResponse(statusLine.getStatusCode(), statusLine.getReasonPhrase());
+ response.setVersion(statusLine.getProtocolVersion());
+ return response;
}
}
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=1769681&r1=1769680&r2=1769681&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 Mon Nov 14 19:11:26 2016
@@ -65,12 +65,11 @@ public class DefaultHttpResponseWriter<T
@Override
protected void writeHeadLine(final T message, final CharArrayBuffer lineBuf) throws IOException {
lineBuf.clear();
- 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()));
+ final ProtocolVersion transportVersion = message.getVersion();
+ getLineFormatter().formatStatusLine(lineBuf, new StatusLine(
+ transportVersion != null ? transportVersion : HttpVersion.HTTP_1_1,
+ message.getCode(),
+ message.getReasonPhrase()));
}
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ServerHttp1StreamHandler.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ServerHttp1StreamHandler.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ServerHttp1StreamHandler.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/ServerHttp1StreamHandler.java Mon Nov 14 19:11:26 2016
@@ -39,6 +39,7 @@ import org.apache.hc.core5.http.HttpExce
import org.apache.hc.core5.http.HttpRequest;
import org.apache.hc.core5.http.HttpResponse;
import org.apache.hc.core5.http.HttpStatus;
+import org.apache.hc.core5.http.HttpVersion;
import org.apache.hc.core5.http.MethodNotSupportedException;
import org.apache.hc.core5.http.MisdirectedRequestException;
import org.apache.hc.core5.http.NotImplementedException;
@@ -142,6 +143,11 @@ class ServerHttp1StreamHandler implement
final EntityDetails responseEntityDetails) throws HttpException, IOException {
if (responseCommitted.compareAndSet(false, true)) {
+ final ProtocolVersion transportVersion = response.getVersion();
+ if (transportVersion != null && transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
+ }
+
final int status = response.getCode();
if (status < HttpStatus.SC_SUCCESS) {
throw new HttpException("Invalid response: " + status);
@@ -240,6 +246,9 @@ class ServerHttp1StreamHandler implement
exchangeHandler = handler;
final ProtocolVersion transportVersion = request.getVersion();
+ if (transportVersion != null && transportVersion.greaterEquals(HttpVersion.HTTP_2)) {
+ throw new UnsupportedHttpVersionException("Unsupported version: " + transportVersion);
+ }
context.setProtocolVersion(transportVersion);
context.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
context.setAttribute(HttpCoreContext.HTTP_CONNECTION, connection);
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=1769681&r1=1769680&r2=1769681&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 Mon Nov 14 19:11:26 2016
@@ -168,6 +168,11 @@ public class BasicHttpRequest extends He
}
@Override
+ public String getRequestUri() {
+ return getPath();
+ }
+
+ @Override
public URI getUri() throws URISyntaxException {
if (this.requestUri == null) {
final StringBuilder buf = new StringBuilder();
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/HttpRequestWrapper.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/HttpRequestWrapper.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/HttpRequestWrapper.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/HttpRequestWrapper.java Mon Nov 14 19:11:26 2016
@@ -80,6 +80,11 @@ public class HttpRequestWrapper extends
}
@Override
+ public String getRequestUri() {
+ return message.getRequestUri();
+ }
+
+ @Override
public URI getUri() throws URISyntaxException {
return message.getUri();
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/message/RequestLine.java Mon Nov 14 19:11:26 2016
@@ -54,7 +54,7 @@ public final class RequestLine implement
super();
Args.notNull(request, "Request");
this.method = request.getMethod();
- this.uri = request.getPath();
+ this.uri = request.getRequestUri();
this.protoversion = request.getVersion() != null ? request.getVersion() : HttpVersion.HTTP_1_1;
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestRequestParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestRequestParser.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestRequestParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestRequestParser.java Mon Nov 14 19:11:26 2016
@@ -30,11 +30,10 @@ import java.io.ByteArrayInputStream;
import java.io.InterruptedIOException;
import java.nio.charset.StandardCharsets;
+import org.apache.hc.core5.http.ClassicHttpRequest;
import org.apache.hc.core5.http.ConnectionClosedException;
import org.apache.hc.core5.http.Header;
-import org.apache.hc.core5.http.ClassicHttpRequest;
import org.apache.hc.core5.http.MessageConstraintException;
-import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.io.SessionInputBuffer;
import org.junit.Assert;
@@ -146,14 +145,5 @@ public class TestRequestParser {
Assert.assertEquals(3, headers.length);
}
- @Test(expected = UnsupportedHttpVersionException.class)
- public void testParsingUnsupportedVersion() throws Exception {
- final String s = "GET / HTTP/2.0\r\n\r\n";
- final ByteArrayInputStream inputStream = new ByteArrayInputStream(s.getBytes(StandardCharsets.US_ASCII));
- final SessionInputBuffer inbuffer = new SessionInputBufferImpl(16, StandardCharsets.US_ASCII.newDecoder());
- final DefaultHttpRequestParser parser = new DefaultHttpRequestParser();
- parser.parse(inbuffer, inputStream);
- }
-
}
Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestResponseParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestResponseParser.java?rev=1769681&r1=1769680&r2=1769681&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestResponseParser.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestResponseParser.java Mon Nov 14 19:11:26 2016
@@ -31,11 +31,10 @@ import java.io.ByteArrayInputStream;
import java.io.InterruptedIOException;
import java.nio.charset.StandardCharsets;
-import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.ClassicHttpResponse;
+import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.MessageConstraintException;
import org.apache.hc.core5.http.NoHttpResponseException;
-import org.apache.hc.core5.http.UnsupportedHttpVersionException;
import org.apache.hc.core5.http.config.H1Config;
import org.apache.hc.core5.http.io.SessionInputBuffer;
import org.junit.Assert;
@@ -146,14 +145,5 @@ public class TestResponseParser {
Assert.assertEquals(3, headers.length);
}
- @Test(expected = UnsupportedHttpVersionException.class)
- public void testParsingUnsupportedVersion() throws Exception {
- final String s = "HTTP/2.0 200 OK\r\n\r\n";
- final ByteArrayInputStream inputStream = new ByteArrayInputStream(s.getBytes(StandardCharsets.US_ASCII));
- final SessionInputBuffer inbuffer = new SessionInputBufferImpl(16, StandardCharsets.US_ASCII.newDecoder());
- final DefaultHttpResponseParser parser = new DefaultHttpResponseParser();
- parser.parse(inbuffer, inputStream);
- }
-
}