hc-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ol...@apache.org
Subject svn commit: r1762526 [1/3] - in /httpcomponents/httpcore/trunk: ./ httpcore5-ab/src/test/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/...
Date Tue, 27 Sep 2016 17:49:09 GMT
Author: olegk
Date: Tue Sep 27 17:49:09 2016
New Revision: 1762526

URL: http://svn.apache.org/viewvc?rev=1762526&view=rev
Log:
Decoupled transport independent APIs from inherently blocking ClassicHttpRequest and ClassicHttpResponse

Added:
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java
      - copied, changed from r1762076, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java   (contents, props changed)
      - copied, changed from r1762076, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpExpectationVerifier.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java   (contents, props changed)
      - copied, changed from r1762076, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ImmutableHttpProcessor.java
Removed:
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpExpectationVerifier.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ImmutableHttpProcessor.java
Modified:
    httpcomponents/httpcore/trunk/httpcore5-ab/src/test/java/org/apache/hc/core5/http/benchmark/HttpServer.java
    httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/ElementalReverseProxy.java
    httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/NHttpReverseProxy.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/ConnectionReuseStrategy.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpEntity.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestInterceptor.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseInterceptor.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/bootstrap/io/ServerBootstrap.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/DefaultConnectionReuseStrategy.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpRequestExecutor.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpService.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/BasicAsyncClientExchangeHandler.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/HttpAsyncService.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/PipeliningClientExchangeHandler.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/UriHttpRequestHandlerMapper.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ChainBuilder.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpCoreContext.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessor.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessorBuilder.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestConnControl.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestContent.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestDate.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestExpectContinue.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestTargetHost.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestUserAgent.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestValidateHost.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseConnControl.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseContent.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseDate.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseServer.java
    httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/TrailerNameFormatter.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestHttpRequestExecutor.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestHttpService.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/nio/TestBasicAsyncClientExchangeHandler.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/nio/TestHttpAsyncService.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/integration/TestAsyncHttp.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/integration/TestClientOutOfSequenceResponse.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/integration/TestDefaultListeningIOReactor.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/integration/TestServerSidePipelining.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/integration/TestSyncHttp.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/io/TestUriHttpRequestHandlerMapper.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/protocol/TestStandardInterceptors.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/testserver/io/HttpClient.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/testserver/io/HttpServer.java
    httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/testserver/nio/HttpCoreNIOTestBase.java
    httpcomponents/httpcore/trunk/pom.xml

Modified: httpcomponents/httpcore/trunk/httpcore5-ab/src/test/java/org/apache/hc/core5/http/benchmark/HttpServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5-ab/src/test/java/org/apache/hc/core5/http/benchmark/HttpServer.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5-ab/src/test/java/org/apache/hc/core5/http/benchmark/HttpServer.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5-ab/src/test/java/org/apache/hc/core5/http/benchmark/HttpServer.java Tue Sep 27 17:49:09 2016
@@ -45,7 +45,7 @@ import org.apache.hc.core5.http.protocol
 import org.apache.hc.core5.http.protocol.HttpProcessor;
 import org.apache.hc.core5.http.io.HttpRequestHandler;
 import org.apache.hc.core5.http.impl.io.HttpService;
-import org.apache.hc.core5.http.protocol.ImmutableHttpProcessor;
+import org.apache.hc.core5.http.protocol.DefaultHttpProcessor;
 import org.apache.hc.core5.http.protocol.ResponseConnControl;
 import org.apache.hc.core5.http.protocol.ResponseContent;
 import org.apache.hc.core5.http.protocol.ResponseDate;
@@ -64,7 +64,7 @@ public class HttpServer {
 
     public HttpServer() throws IOException {
         super();
-        this.httpproc = new ImmutableHttpProcessor(
+        this.httpproc = new DefaultHttpProcessor(
                 new HttpResponseInterceptor[] {
                         new ResponseDate(),
                         new ResponseServer("TEST-SERVER/1.1"),

Modified: httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/ElementalReverseProxy.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/ElementalReverseProxy.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/ElementalReverseProxy.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/ElementalReverseProxy.java Tue Sep 27 17:49:09 2016
@@ -54,7 +54,7 @@ import org.apache.hc.core5.http.protocol
 import org.apache.hc.core5.http.protocol.HttpContext;
 import org.apache.hc.core5.http.protocol.HttpCoreContext;
 import org.apache.hc.core5.http.protocol.HttpProcessor;
-import org.apache.hc.core5.http.protocol.ImmutableHttpProcessor;
+import org.apache.hc.core5.http.protocol.DefaultHttpProcessor;
 import org.apache.hc.core5.http.protocol.RequestConnControl;
 import org.apache.hc.core5.http.protocol.RequestContent;
 import org.apache.hc.core5.http.protocol.RequestExpectContinue;
@@ -168,7 +168,7 @@ public class ElementalReverseProxy {
             this.serversocket = new ServerSocket(port);
 
             // Set up HTTP protocol processor for incoming connections
-            final HttpProcessor inhttpproc = new ImmutableHttpProcessor(
+            final HttpProcessor inhttpproc = new DefaultHttpProcessor(
                     new HttpRequestInterceptor[] {
                             new RequestContent(),
                             new RequestTargetHost(),
@@ -178,7 +178,7 @@ public class ElementalReverseProxy {
              });
 
             // Set up HTTP protocol processor for outgoing connections
-            final HttpProcessor outhttpproc = new ImmutableHttpProcessor(
+            final HttpProcessor outhttpproc = new DefaultHttpProcessor(
                     new HttpResponseInterceptor[] {
                             new ResponseDate(),
                             new ResponseServer("Test/1.1"),

Modified: httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/NHttpReverseProxy.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/NHttpReverseProxy.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/NHttpReverseProxy.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/examples/org/apache/hc/core5/http/examples/NHttpReverseProxy.java Tue Sep 27 17:49:09 2016
@@ -39,6 +39,8 @@ import org.apache.hc.core5.http.ClassicH
 import org.apache.hc.core5.http.ConnectionReuseStrategy;
 import org.apache.hc.core5.http.HttpException;
 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.HttpStatus;
 import org.apache.hc.core5.http.config.ConnectionConfig;
 import org.apache.hc.core5.http.entity.ContentType;
@@ -71,7 +73,7 @@ import org.apache.hc.core5.http.pool.nio
 import org.apache.hc.core5.http.protocol.HttpContext;
 import org.apache.hc.core5.http.protocol.HttpCoreContext;
 import org.apache.hc.core5.http.protocol.HttpProcessor;
-import org.apache.hc.core5.http.protocol.ImmutableHttpProcessor;
+import org.apache.hc.core5.http.protocol.DefaultHttpProcessor;
 import org.apache.hc.core5.http.protocol.RequestConnControl;
 import org.apache.hc.core5.http.protocol.RequestContent;
 import org.apache.hc.core5.http.protocol.RequestExpectContinue;
@@ -120,7 +122,7 @@ public class NHttpReverseProxy {
 
         // Set up HTTP protocol processor for outgoing connections
         HttpProcessor outhttpproc;
-        outhttpproc = new ImmutableHttpProcessor(
+        outhttpproc = new DefaultHttpProcessor(
                 new RequestContent(),
                 new RequestTargetHost(),
                 new RequestConnControl(),
@@ -138,7 +140,7 @@ public class NHttpReverseProxy {
 
 
         // Set up HTTP protocol processor for incoming connections
-        HttpProcessor inhttpproc = new ImmutableHttpProcessor(
+        HttpProcessor inhttpproc = new DefaultHttpProcessor(
                 new ResponseDate(),
                 new ResponseServer("Test/1.1"),
                 new ResponseContent(),
@@ -763,7 +765,7 @@ public class NHttpReverseProxy {
     static class ProxyIncomingConnectionReuseStrategy extends DefaultConnectionReuseStrategy {
 
         @Override
-        public boolean keepAlive(final ClassicHttpRequest request, final ClassicHttpResponse response, final HttpContext context) {
+        public boolean keepAlive(final HttpRequest request, final HttpResponse response, final HttpContext context) {
             NHttpConnection conn = (NHttpConnection) context.getAttribute(
                     HttpCoreContext.HTTP_CONNECTION);
             boolean keepAlive = super.keepAlive(request, response, context);
@@ -778,7 +780,7 @@ public class NHttpReverseProxy {
     static class ProxyOutgoingConnectionReuseStrategy extends DefaultConnectionReuseStrategy {
 
         @Override
-        public boolean keepAlive(final ClassicHttpRequest request, final ClassicHttpResponse response, final HttpContext context) {
+        public boolean keepAlive(final HttpRequest request, final HttpResponse response, final HttpContext context) {
             NHttpConnection conn = (NHttpConnection) context.getAttribute(
                     HttpCoreContext.HTTP_CONNECTION);
             boolean keepAlive = super.keepAlive(request, response, context);

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/ConnectionReuseStrategy.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/ConnectionReuseStrategy.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/ConnectionReuseStrategy.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/ConnectionReuseStrategy.java Tue Sep 27 17:49:09 2016
@@ -69,6 +69,6 @@ public interface ConnectionReuseStrategy
      * @return {@code true} if the connection is allowed to be reused, or
      *         {@code false} if it MUST NOT be reused
      */
-    boolean keepAlive(ClassicHttpRequest request, ClassicHttpResponse response, HttpContext context);
+    boolean keepAlive(HttpRequest request, HttpResponse response, HttpContext context);
 
 }

Copied: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java (from r1762076, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java?p2=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java&p1=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java&r1=1762076&r2=1762526&rev=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/EntityDetails.java Tue Sep 27 17:49:09 2016
@@ -25,29 +25,43 @@
  *
  */
 
-package org.apache.hc.core5.http.io;
+package org.apache.hc.core5.http;
 
-import org.apache.hc.core5.http.ClassicHttpRequest;
-import org.apache.hc.core5.http.protocol.HttpContext;
+import java.util.Set;
 
 /**
- * HttpRequestHandlerMapper can be used to resolve an instance of
- * {@link HttpRequestHandler} matching a particular {@link ClassicHttpRequest}. Usually the
- * mapped request handler will be used to process the request.
+ * Details of an entity transmitted by a message.
  *
- * @since 4.3
+ * @since 5.0
  */
-public interface HttpRequestHandlerMapper {
+public interface EntityDetails {
 
     /**
-     * Looks up a handler matching the given request.
-     *
-     * @param request the request to map to a handler
-     * @return HTTP request handler or {@code null} if no match
-     * is found.
-     *
-     * @since 5.0
+     * Returns length of the entity, if known.
      */
-    HttpRequestHandler lookup(ClassicHttpRequest request, HttpContext context);
+    long getContentLength();
+
+    /**
+     * Returns content type of the entity, if known.
+     */
+    String getContentType();
+
+    /**
+     * Returns content encoding of the entity, if known.
+     */
+    String getContentEncoding();
+
+    /**
+     * Returns chunked transfer hint for this entity.
+     * <p>
+     * The behavior of wrapping entities is implementation dependent,
+     * but should respect the primary purpose.
+     */
+    boolean isChunked();
+
+    /**
+     * Preliminary declaration of trailing headers.
+     */
+    Set<String> getTrailerNames();
 
 }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpEntity.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpEntity.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpEntity.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpEntity.java Tue Sep 27 17:49:09 2016
@@ -30,7 +30,6 @@ package org.apache.hc.core5.http;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
-import java.util.Set;
 
 /**
  * An entity that can be sent or received with an HTTP message.
@@ -60,7 +59,7 @@ import java.util.Set;
  *
  * @since 4.0
  */
-public interface HttpEntity {
+public interface HttpEntity extends EntityDetails {
 
     /**
      * Tells if the entity is capable of producing its data more than once.
@@ -71,55 +70,6 @@ public interface HttpEntity {
     boolean isRepeatable();
 
     /**
-     * Tells about chunked encoding for this entity.
-     * The primary purpose of this method is to indicate whether
-     * chunked encoding should be used when the entity is sent.
-     * For entities that are received, it can also indicate whether
-     * the entity was received with chunked encoding.
-     * <p>
-     * The behavior of wrapping entities is implementation dependent,
-     * but should respect the primary purpose.
-     * </p>
-     *
-     * @return  {@code true} if chunked encoding is preferred for this
-     *          entity, or {@code false} if it is not
-     */
-    boolean isChunked();
-
-    /**
-     * Tells the length of the content, if known.
-     *
-     * @return  the number of bytes of the content, or
-     *          a negative number if unknown. If the content length is known
-     *          but exceeds {@link java.lang.Long#MAX_VALUE Long.MAX_VALUE},
-     *          a negative number is returned.
-     */
-    long getContentLength();
-
-    /**
-     * Obtains the Content-Type header, if known.
-     * This is the header that should be used when sending the entity,
-     * or the one that was received with the entity. It can include a
-     * charset attribute.
-     *
-     * @return  the Content-Type header for this entity, or
-     *          {@code null} if the content type is unknown
-     */
-    String getContentType();
-
-    /**
-     * Obtains the Content-Encoding header, if known.
-     * This is the header that should be used when sending the entity,
-     * or the one that was received with the entity.
-     * Wrapping entities that modify the content encoding should
-     * adjust this header accordingly.
-     *
-     * @return  the Content-Encoding header for this entity, or
-     *          {@code null} if the content encoding is unknown
-     */
-    String getContentEncoding();
-
-    /**
      * Returns a content stream of the entity.
      * {@link #isRepeatable Repeatable} entities are expected
      * to create a new instance of {@link InputStream} for each invocation
@@ -175,12 +125,4 @@ public interface HttpEntity {
      */
      TrailerSupplier getTrailers();
 
-    /**
-     * Preliminary declaration of trailing headers
-     * @return names of expected trailing headers
-     *
-     * @since 5.0
-     */
-     Set<String> getTrailerNames();
-
 }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestInterceptor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestInterceptor.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestInterceptor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpRequestInterceptor.java Tue Sep 27 17:49:09 2016
@@ -56,13 +56,13 @@ public interface HttpRequestInterceptor
      * sent to the server. On the server side, this step is performed
      * on incoming messages before the message body is evaluated.
      *
-     * @param request   the request to preprocess
+     * @param request   the request to process
+     * @param entity    the request entity details or {@code null} if not available
      * @param context   the context for the request
      *
      * @throws HttpException in case of an HTTP protocol violation
      * @throws IOException in case of an I/O error
      */
-    void process(ClassicHttpRequest request, HttpContext context)
-        throws HttpException, IOException;
+    void process(HttpRequest request, EntityDetails entity, HttpContext context) throws HttpException, IOException;
 
 }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseInterceptor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseInterceptor.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseInterceptor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/HttpResponseInterceptor.java Tue Sep 27 17:49:09 2016
@@ -56,13 +56,13 @@ public interface HttpResponseInterceptor
      * sent to the client. On the client side, this step is performed
      * on incoming messages before the message body is evaluated.
      *
-     * @param response  the response to postprocess
+     * @param response  the response to process
+     * @param entity    the request entity details or {@code null} if not available
      * @param context   the context for the request
      *
      * @throws HttpException in case of an HTTP protocol violation
      * @throws IOException in case of an I/O error
      */
-    void process(ClassicHttpResponse response, HttpContext context)
-        throws HttpException, IOException;
+    void process(HttpResponse response, EntityDetails entity, HttpContext context) throws HttpException, IOException;
 
 }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/bootstrap/io/ServerBootstrap.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/bootstrap/io/ServerBootstrap.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/bootstrap/io/ServerBootstrap.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/bootstrap/io/ServerBootstrap.java Tue Sep 27 17:49:09 2016
@@ -50,7 +50,7 @@ import org.apache.hc.core5.http.io.HttpC
 import org.apache.hc.core5.http.io.HttpRequestHandler;
 import org.apache.hc.core5.http.io.HttpRequestHandlerMapper;
 import org.apache.hc.core5.http.io.UriHttpRequestHandlerMapper;
-import org.apache.hc.core5.http.protocol.HttpExpectationVerifier;
+import org.apache.hc.core5.http.io.HttpExpectationVerifier;
 import org.apache.hc.core5.http.protocol.HttpProcessor;
 import org.apache.hc.core5.http.protocol.HttpProcessorBuilder;
 import org.apache.hc.core5.http.protocol.RequestValidateHost;

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/DefaultConnectionReuseStrategy.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/DefaultConnectionReuseStrategy.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/DefaultConnectionReuseStrategy.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/DefaultConnectionReuseStrategy.java Tue Sep 27 17:49:09 2016
@@ -31,12 +31,12 @@ import java.util.Iterator;
 
 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.ClassicHttpResponse;
 import org.apache.hc.core5.http.ConnectionReuseStrategy;
 import org.apache.hc.core5.http.Header;
 import org.apache.hc.core5.http.HeaderElements;
 import org.apache.hc.core5.http.HttpHeaders;
+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.ProtocolVersion;
@@ -77,7 +77,7 @@ public class DefaultConnectionReuseStrat
     // see interface ConnectionReuseStrategy
     @Override
     public boolean keepAlive(
-            final ClassicHttpRequest request, final ClassicHttpResponse response, final HttpContext context) {
+            final HttpRequest request, final HttpResponse response, final HttpContext context) {
         Args.notNull(response, "HTTP response");
 
         if (request != null) {
@@ -138,7 +138,7 @@ public class DefaultConnectionReuseStrat
         return ver.greaterEquals(HttpVersion.HTTP_1_1);
     }
 
-    private boolean canResponseHaveBody(final ClassicHttpResponse response) {
+    private boolean canResponseHaveBody(final HttpResponse response) {
         final int status = response.getCode();
         return status >= HttpStatus.SC_SUCCESS
             && status != HttpStatus.SC_NO_CONTENT

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpRequestExecutor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpRequestExecutor.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpRequestExecutor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpRequestExecutor.java Tue Sep 27 17:49:09 2016
@@ -203,7 +203,7 @@ public class HttpRequestExecutor {
         Args.notNull(processor, "HTTP processor");
         Args.notNull(context, "HTTP context");
         context.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
-        processor.process(request, context);
+        processor.process(request, request.getEntity(), context);
     }
 
     /**
@@ -235,7 +235,7 @@ public class HttpRequestExecutor {
             context.setProtocolVersion(transportVersion);
         }
         context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response);
-        processor.process(response, context);
+        processor.process(response, response.getEntity(), context);
     }
 
 } // class HttpRequestExecutor

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpService.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpService.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpService.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/HttpService.java Tue Sep 27 17:49:09 2016
@@ -55,7 +55,7 @@ import org.apache.hc.core5.http.io.HttpR
 import org.apache.hc.core5.http.io.HttpServerConnection;
 import org.apache.hc.core5.http.protocol.HttpContext;
 import org.apache.hc.core5.http.protocol.HttpCoreContext;
-import org.apache.hc.core5.http.protocol.HttpExpectationVerifier;
+import org.apache.hc.core5.http.io.HttpExpectationVerifier;
 import org.apache.hc.core5.http.protocol.HttpProcessor;
 import org.apache.hc.core5.util.Args;
 
@@ -193,7 +193,7 @@ public class HttpService {
             } else {
                 context.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
                 context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response);
-                this.processor.process(response, context);
+                this.processor.process(response, response.getEntity(), context);
                 conn.sendResponseHeader(response);
                 if (canResponseHaveBody(request, response)) {
                     conn.sendResponseEntity(response);
@@ -208,19 +208,19 @@ public class HttpService {
             conn.receiveRequestEntity(request);
 
             context.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
-            this.processor.process(request, context);
+            this.processor.process(request, request.getEntity(), context);
 
             response = this.responseFactory.newHttpResponse(HttpStatus.SC_OK);
             doService(request, response, context);
 
             context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response);
-            this.processor.process(response, context);
+            this.processor.process(response, response.getEntity(), context);
 
         } catch (final HttpException ex) {
             response = this.responseFactory.newHttpResponse(HttpStatus.SC_INTERNAL_SERVER_ERROR);
             handleException(ex, response);
             context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response);
-            this.processor.process(response, context);
+            this.processor.process(response, response.getEntity(), context);
         }
 
         conn.sendResponseHeader(response);

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/BasicAsyncClientExchangeHandler.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/BasicAsyncClientExchangeHandler.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/BasicAsyncClientExchangeHandler.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/impl/nio/BasicAsyncClientExchangeHandler.java Tue Sep 27 17:49:09 2016
@@ -152,7 +152,7 @@ public class BasicAsyncClientExchangeHan
         final ClassicHttpRequest request = this.requestProducer.generateRequest();
         this.localContext.setAttribute(HttpCoreContext.HTTP_REQUEST, request);
         this.localContext.setAttribute(HttpCoreContext.HTTP_CONNECTION, this.conn);
-        this.httppocessor.process(request, this.localContext);
+        this.httppocessor.process(request, request.getEntity(), this.localContext);
         return request;
     }
 
@@ -175,7 +175,7 @@ public class BasicAsyncClientExchangeHan
         if (transportVersion != null) {
             this.localContext.setProtocolVersion(transportVersion);
         }
-        this.httppocessor.process(response, this.localContext);
+        this.httppocessor.process(response, response.getEntity(), this.localContext);
         this.responseConsumer.responseReceived(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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -287,7 +287,7 @@ public class HttpAsyncService implements
         if (transportVersion != null) {
             context.setProtocolVersion(transportVersion);
         }
-        this.httpProcessor.process(request, context);
+        this.httpProcessor.process(request, request.getEntity(), context);
 
         final HttpAsyncRequestHandler<Object> requestHandler = getRequestHandler(request, context);
         final HttpAsyncRequestConsumer<Object> consumer = requestHandler.processRequest(request, context);
@@ -643,7 +643,7 @@ public class HttpAsyncService implements
         final HttpContext context = outgoing.getContext();
 
         context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response);
-        this.httpProcessor.process(response, context);
+        this.httpProcessor.process(response, response.getEntity(), context);
 
         HttpEntity entity = response.getEntity();
         if (entity != null && !canResponseHaveBody(request, response)) {

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -184,7 +184,7 @@ public class PipeliningClientExchangeHan
         }
         this.requestProducerRef.set(requestProducer);
         final ClassicHttpRequest request = requestProducer.generateRequest();
-        this.httppocessor.process(request, this.localContext);
+        this.httppocessor.process(request, request.getEntity(), this.localContext);
         this.requestQueue.add(request);
         return request;
     }
@@ -221,7 +221,7 @@ public class PipeliningClientExchangeHan
         if (transportVersion != null) {
             this.localContext.setProtocolVersion(transportVersion);
         }
-        this.httppocessor.process(response, this.localContext);
+        this.httppocessor.process(response, response.getEntity(), this.localContext);
 
         responseConsumer.responseReceived(response);
     }

Copied: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java (from r1762076, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpExpectationVerifier.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java?p2=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java&p1=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpExpectationVerifier.java&r1=1762076&r2=1762526&rev=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpExpectationVerifier.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java Tue Sep 27 17:49:09 2016
@@ -25,11 +25,12 @@
  *
  */
 
-package org.apache.hc.core5.http.protocol;
+package org.apache.hc.core5.http.io;
 
 import org.apache.hc.core5.http.ClassicHttpRequest;
 import org.apache.hc.core5.http.ClassicHttpResponse;
 import org.apache.hc.core5.http.HttpException;
+import org.apache.hc.core5.http.protocol.HttpContext;
 
 /**
  * Defines an interface to verify whether an incoming HTTP request meets

Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpExpectationVerifier.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/io/HttpRequestHandlerMapper.java Tue Sep 27 17:49:09 2016
@@ -27,12 +27,12 @@
 
 package org.apache.hc.core5.http.io;
 
-import org.apache.hc.core5.http.ClassicHttpRequest;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.protocol.HttpContext;
 
 /**
  * HttpRequestHandlerMapper can be used to resolve an instance of
- * {@link HttpRequestHandler} matching a particular {@link ClassicHttpRequest}. Usually the
+ * {@link HttpRequestHandler} matching a particular {@link HttpRequest}. Usually the
  * mapped request handler will be used to process the request.
  *
  * @since 4.3
@@ -48,6 +48,6 @@ public interface HttpRequestHandlerMappe
      *
      * @since 5.0
      */
-    HttpRequestHandler lookup(ClassicHttpRequest request, HttpContext context);
+    HttpRequestHandler lookup(HttpRequest request, HttpContext context);
 
 }

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -29,7 +29,7 @@ package org.apache.hc.core5.http.io;
 
 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.HttpRequest;
 import org.apache.hc.core5.http.protocol.HttpContext;
 import org.apache.hc.core5.http.protocol.UriPatternMatcher;
 import org.apache.hc.core5.util.Args;
@@ -88,9 +88,9 @@ public class UriHttpRequestHandlerMapper
     }
 
     /**
-     * Extracts request path from the given {@link ClassicHttpRequest}
+     * Extracts request path from the given {@link HttpRequest}
      */
-    protected String getRequestPath(final ClassicHttpRequest request) {
+    protected String getRequestPath(final HttpRequest request) {
         String uriPath = request.getPath();
         int index = uriPath.indexOf("?");
         if (index != -1) {
@@ -111,7 +111,7 @@ public class UriHttpRequestHandlerMapper
      * @return handler or {@code null} if no match is found.
      */
     @Override
-    public HttpRequestHandler lookup(final ClassicHttpRequest request, final HttpContext context) {
+    public HttpRequestHandler lookup(final HttpRequest request, final HttpContext context) {
         Args.notNull(request, "HTTP request");
         return matcher.lookup(getRequestPath(request));
     }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ChainBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ChainBuilder.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ChainBuilder.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ChainBuilder.java Tue Sep 27 17:49:09 2016
@@ -36,7 +36,7 @@ import java.util.Map;
  * Builder class to build a linked list (chain) of unique class instances. Each class can have
  * only one instance in the list. Useful for building lists of protocol interceptors.
  *
- * @see ImmutableHttpProcessor
+ * @see DefaultHttpProcessor
  *
  * @since 4.3
  */

Copied: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java (from r1762076, httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ImmutableHttpProcessor.java)
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java?p2=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java&p1=httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ImmutableHttpProcessor.java&r1=1762076&r2=1762526&rev=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ImmutableHttpProcessor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java Tue Sep 27 17:49:09 2016
@@ -31,24 +31,25 @@ import java.util.List;
 
 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.ClassicHttpResponse;
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.HttpException;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
+import org.apache.hc.core5.http.HttpResponse;
 import org.apache.hc.core5.http.HttpResponseInterceptor;
 
 /**
- * Immutable {@link HttpProcessor}.
+ * Default immutable implementation of {@link HttpProcessor}.
  *
- * @since 4.1
+ * @since 5.0
  */
 @Contract(threading = ThreadingBehavior.IMMUTABLE_CONDITIONAL)
-public final class ImmutableHttpProcessor implements HttpProcessor {
+public final class DefaultHttpProcessor implements HttpProcessor {
 
     private final HttpRequestInterceptor[] requestInterceptors;
     private final HttpResponseInterceptor[] responseInterceptors;
 
-    public ImmutableHttpProcessor(
+    public DefaultHttpProcessor(
             final HttpRequestInterceptor[] requestInterceptors,
             final HttpResponseInterceptor[] responseInterceptors) {
         super();
@@ -71,7 +72,7 @@ public final class ImmutableHttpProcesso
     /**
      * @since 4.3
      */
-    public ImmutableHttpProcessor(
+    public DefaultHttpProcessor(
             final List<HttpRequestInterceptor> requestInterceptors,
             final List<HttpResponseInterceptor> responseInterceptors) {
         super();
@@ -89,29 +90,31 @@ public final class ImmutableHttpProcesso
         }
     }
 
-    public ImmutableHttpProcessor(final HttpRequestInterceptor... requestInterceptors) {
+    public DefaultHttpProcessor(final HttpRequestInterceptor... requestInterceptors) {
         this(requestInterceptors, null);
     }
 
-    public ImmutableHttpProcessor(final HttpResponseInterceptor... responseInterceptors) {
+    public DefaultHttpProcessor(final HttpResponseInterceptor... responseInterceptors) {
         this(null, responseInterceptors);
     }
 
     @Override
     public void process(
-            final ClassicHttpRequest request,
+            final HttpRequest request,
+            final EntityDetails entity,
             final HttpContext context) throws IOException, HttpException {
         for (final HttpRequestInterceptor requestInterceptor : this.requestInterceptors) {
-            requestInterceptor.process(request, context);
+            requestInterceptor.process(request, entity, context);
         }
     }
 
     @Override
     public void process(
-            final ClassicHttpResponse response,
+            final HttpResponse response,
+            final EntityDetails entity,
             final HttpContext context) throws IOException, HttpException {
         for (final HttpResponseInterceptor responseInterceptor : this.responseInterceptors) {
-            responseInterceptor.process(response, context);
+            responseInterceptor.process(response, entity, context);
         }
     }
 

Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/DefaultHttpProcessor.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -27,9 +27,9 @@
 
 package org.apache.hc.core5.http.protocol;
 
-import org.apache.hc.core5.http.ClassicHttpRequest;
-import org.apache.hc.core5.http.ClassicHttpResponse;
 import org.apache.hc.core5.http.HttpConnection;
+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;
 
@@ -48,13 +48,13 @@ public class HttpCoreContext implements
     public static final String HTTP_CONNECTION  = HttpContext.RESERVED_PREFIX + "connection";
 
     /**
-     * Attribute name of a {@link ClassicHttpRequest} object that
+     * Attribute name of a {@link HttpRequest} object that
      * represents the actual HTTP request.
      */
     public static final String HTTP_REQUEST     = HttpContext.RESERVED_PREFIX + "request";
 
     /**
-     * Attribute name of a {@link ClassicHttpResponse} object that
+     * Attribute name of a {@link HttpResponse} object that
      * represents the actual HTTP response.
      */
     public static final String HTTP_RESPONSE    = HttpContext.RESERVED_PREFIX + "response";
@@ -131,12 +131,12 @@ public class HttpCoreContext implements
         return getAttribute(HTTP_CONNECTION, HttpConnection.class);
     }
 
-    public ClassicHttpRequest getRequest() {
-        return getAttribute(HTTP_REQUEST, ClassicHttpRequest.class);
+    public HttpRequest getRequest() {
+        return getAttribute(HTTP_REQUEST, HttpRequest.class);
     }
 
-    public ClassicHttpResponse getResponse() {
-        return getAttribute(HTTP_RESPONSE, ClassicHttpResponse.class);
+    public HttpResponse getResponse() {
+        return getAttribute(HTTP_RESPONSE, HttpResponse.class);
     }
 
 }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessor.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessor.java Tue Sep 27 17:49:09 2016
@@ -48,8 +48,5 @@ import org.apache.hc.core5.http.HttpResp
  *
  * @since 4.0
  */
-public interface HttpProcessor
-    extends HttpRequestInterceptor, HttpResponseInterceptor {
-
-    // no additional methods
+public interface HttpProcessor extends HttpRequestInterceptor, HttpResponseInterceptor {
 }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessorBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessorBuilder.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessorBuilder.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/HttpProcessorBuilder.java Tue Sep 27 17:49:09 2016
@@ -143,7 +143,7 @@ public class HttpProcessorBuilder {
     }
 
     public HttpProcessor build() {
-        return new ImmutableHttpProcessor(
+        return new DefaultHttpProcessor(
                 requestChainBuilder != null ? requestChainBuilder.build() : null,
                 responseChainBuilder != null ? responseChainBuilder.build() : null);
     }

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -31,10 +31,11 @@ import java.io.IOException;
 
 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.EntityDetails;
 import org.apache.hc.core5.http.HeaderElements;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.util.Args;
 
@@ -54,7 +55,7 @@ public class RequestConnControl implemen
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
 

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -32,11 +32,11 @@ import java.util.Set;
 
 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.EntityDetails;
 import org.apache.hc.core5.http.HeaderElements;
-import org.apache.hc.core5.http.HttpEntity;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.http.HttpVersion;
 import org.apache.hc.core5.http.ProtocolException;
@@ -85,7 +85,7 @@ public class RequestContent implements H
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
         if (this.overwrite) {
@@ -99,7 +99,6 @@ public class RequestContent implements H
                 throw new ProtocolException("Content-Length header already present");
             }
         }
-        final HttpEntity entity = request.getEntity();
         if (entity != null) {
             final ProtocolVersion ver = context.getProtocolVersion();
             // Must specify a transfer encoding or a content length

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestDate.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestDate.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestDate.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestDate.java Tue Sep 27 17:49:09 2016
@@ -31,10 +31,10 @@ import java.io.IOException;
 
 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.HttpEntity;
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.util.Args;
 
@@ -55,10 +55,9 @@ public class RequestDate implements Http
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
-        final HttpEntity entity = request.getEntity();
         if (entity != null && !request.containsHeader(HttpHeaders.DATE)) {
             final String httpdate = DATE_GENERATOR.getCurrentDate();
             request.setHeader(HttpHeaders.DATE, httpdate);

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -31,11 +31,11 @@ import java.io.IOException;
 
 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.EntityDetails;
 import org.apache.hc.core5.http.HeaderElements;
-import org.apache.hc.core5.http.HttpEntity;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.http.HttpVersion;
 import org.apache.hc.core5.http.ProtocolVersion;
@@ -56,12 +56,11 @@ public class RequestExpectContinue imple
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
 
         if (!request.containsHeader(HttpHeaders.EXPECT)) {
-            final HttpEntity entity = request.getEntity();
             if (entity != null) {
                 final ProtocolVersion ver = context.getProtocolVersion();
                 // Do not send the expect header if request body is known to be empty

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -32,10 +32,11 @@ import java.net.InetSocketAddress;
 
 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.EntityDetails;
 import org.apache.hc.core5.http.HttpConnection;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.http.HttpVersion;
 import org.apache.hc.core5.http.ProtocolException;
@@ -56,7 +57,7 @@ public class RequestTargetHost implement
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
         Args.notNull(context, "HTTP context");

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestUserAgent.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestUserAgent.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestUserAgent.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/RequestUserAgent.java Tue Sep 27 17:49:09 2016
@@ -31,9 +31,10 @@ import java.io.IOException;
 
 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.EntityDetails;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.util.Args;
 
@@ -58,7 +59,7 @@ public class RequestUserAgent implements
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
         throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
         if (!request.containsHeader(HttpHeaders.USER_AGENT) && this.userAgent != null) {

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -31,10 +31,11 @@ import java.io.IOException;
 
 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.EntityDetails;
 import org.apache.hc.core5.http.Header;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
 import org.apache.hc.core5.http.HttpRequestInterceptor;
 import org.apache.hc.core5.http.HttpVersion;
 import org.apache.hc.core5.http.ProtocolException;
@@ -44,7 +45,7 @@ import org.apache.hc.core5.util.TextUtil
 
 /**
  * RequestTargetHost is responsible for copying {@code Host} header value to
- * {@link ClassicHttpRequest#setAuthority(String)} of the incoming message.
+ * {@link HttpRequest#setAuthority(String)} of the incoming message.
  * This interceptor is required for server side protocol processors.
  *
  * @since 5.0
@@ -57,7 +58,7 @@ public class RequestValidateHost impleme
     }
 
     @Override
-    public void process(final ClassicHttpRequest request, final HttpContext context)
+    public void process(final HttpRequest request, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(request, "HTTP request");
 

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -31,13 +31,13 @@ import java.io.IOException;
 
 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.ClassicHttpResponse;
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.Header;
 import org.apache.hc.core5.http.HeaderElements;
-import org.apache.hc.core5.http.HttpEntity;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpRequest;
+import org.apache.hc.core5.http.HttpResponse;
 import org.apache.hc.core5.http.HttpResponseInterceptor;
 import org.apache.hc.core5.http.HttpStatus;
 import org.apache.hc.core5.http.HttpVersion;
@@ -60,7 +60,7 @@ public class ResponseConnControl impleme
     }
 
     @Override
-    public void process(final ClassicHttpResponse response, final HttpContext context)
+    public void process(final HttpResponse response, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(response, "HTTP response");
 
@@ -85,7 +85,6 @@ 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) {
             if (entity.getContentLength() < 0 &&
@@ -95,7 +94,7 @@ public class ResponseConnControl impleme
             }
         }
         // Drop connection if requested by the client or request was <= 1.0
-        final ClassicHttpRequest request = corecontext.getRequest();
+        final HttpRequest request = corecontext.getRequest();
         if (request != null) {
             final Header header = request.getFirstHeader(HttpHeaders.CONNECTION);
             if (header != null) {

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=1762526&r1=1762525&r2=1762526&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 Sep 27 17:49:09 2016
@@ -32,11 +32,11 @@ import java.util.Set;
 
 import org.apache.hc.core5.annotation.Contract;
 import org.apache.hc.core5.annotation.ThreadingBehavior;
-import org.apache.hc.core5.http.ClassicHttpResponse;
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.HeaderElements;
-import org.apache.hc.core5.http.HttpEntity;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpResponse;
 import org.apache.hc.core5.http.HttpResponseInterceptor;
 import org.apache.hc.core5.http.HttpStatus;
 import org.apache.hc.core5.http.HttpVersion;
@@ -93,7 +93,7 @@ public class ResponseContent implements
      * @throws IllegalArgumentException If the response is null.
      */
     @Override
-    public void process(final ClassicHttpResponse response, final HttpContext context)
+    public void process(final HttpResponse response, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(response, "HTTP response");
         if (this.overwrite) {
@@ -108,7 +108,6 @@ public class ResponseContent implements
             }
         }
         final ProtocolVersion ver = context.getProtocolVersion();
-        final HttpEntity entity = response.getEntity();
         if (entity != null) {
             final long len = entity.getContentLength();
             if (entity.isChunked() && !ver.lessEquals(HttpVersion.HTTP_1_0)) {

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseDate.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseDate.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseDate.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseDate.java Tue Sep 27 17:49:09 2016
@@ -31,9 +31,10 @@ import java.io.IOException;
 
 import org.apache.hc.core5.annotation.Contract;
 import org.apache.hc.core5.annotation.ThreadingBehavior;
-import org.apache.hc.core5.http.ClassicHttpResponse;
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpResponse;
 import org.apache.hc.core5.http.HttpResponseInterceptor;
 import org.apache.hc.core5.http.HttpStatus;
 import org.apache.hc.core5.util.Args;
@@ -55,7 +56,7 @@ public class ResponseDate implements Htt
     }
 
     @Override
-    public void process(final ClassicHttpResponse response, final HttpContext context)
+    public void process(final HttpResponse response, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(response, "HTTP response");
         final int status = response.getCode();

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseServer.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseServer.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/ResponseServer.java Tue Sep 27 17:49:09 2016
@@ -31,9 +31,10 @@ import java.io.IOException;
 
 import org.apache.hc.core5.annotation.Contract;
 import org.apache.hc.core5.annotation.ThreadingBehavior;
-import org.apache.hc.core5.http.ClassicHttpResponse;
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.HttpException;
 import org.apache.hc.core5.http.HttpHeaders;
+import org.apache.hc.core5.http.HttpResponse;
 import org.apache.hc.core5.http.HttpResponseInterceptor;
 import org.apache.hc.core5.util.Args;
 
@@ -61,7 +62,7 @@ public class ResponseServer implements H
     }
 
     @Override
-    public void process(final ClassicHttpResponse response, final HttpContext context)
+    public void process(final HttpResponse response, final EntityDetails entity, final HttpContext context)
             throws HttpException, IOException {
         Args.notNull(response, "HTTP response");
         if (!response.containsHeader(HttpHeaders.SERVER) && this.originServer != null) {

Modified: httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/TrailerNameFormatter.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/TrailerNameFormatter.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/TrailerNameFormatter.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/main/java/org/apache/hc/core5/http/protocol/TrailerNameFormatter.java Tue Sep 27 17:49:09 2016
@@ -32,8 +32,8 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Set;
 
+import org.apache.hc.core5.http.EntityDetails;
 import org.apache.hc.core5.http.Header;
-import org.apache.hc.core5.http.HttpEntity;
 import org.apache.hc.core5.http.HttpHeaders;
 import org.apache.hc.core5.http.message.BufferedHeader;
 import org.apache.hc.core5.util.CharArrayBuffer;
@@ -49,7 +49,7 @@ public class TrailerNameFormatter {
         // Do not allow utility class to be instantiated.
     }
 
-    public static Header format(final HttpEntity entity) {
+    public static Header format(final EntityDetails entity) {
         if (entity == null) {
             return null;
         }

Modified: httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestHttpRequestExecutor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestHttpRequestExecutor.java?rev=1762526&r1=1762525&r2=1762526&view=diff
==============================================================================
--- httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestHttpRequestExecutor.java (original)
+++ httpcomponents/httpcore/trunk/httpcore5/src/test/java/org/apache/hc/core5/http/impl/io/TestHttpRequestExecutor.java Tue Sep 27 17:49:09 2016
@@ -121,7 +121,7 @@ public class TestHttpRequestExecutor {
         final ClassicHttpRequest request = new BasicClassicHttpRequest("GET", "/");
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(200, "OK"));
@@ -133,7 +133,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
 
         Assert.assertSame(conn, context.getConnection());
         Assert.assertSame(request, context.getRequest());
@@ -150,7 +150,7 @@ public class TestHttpRequestExecutor {
         final ClassicHttpRequest request = new BasicClassicHttpRequest("GET", "/");
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(100, "OK"),
@@ -165,7 +165,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn, Mockito.times(1)).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
 
         Assert.assertSame(conn, context.getConnection());
         Assert.assertSame(request, context.getRequest());
@@ -182,7 +182,7 @@ public class TestHttpRequestExecutor {
         final ClassicHttpRequest request = new BasicClassicHttpRequest("GET", "/");
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(204, "OK"));
@@ -194,7 +194,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn, Mockito.never()).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
     }
 
     @Test
@@ -207,7 +207,7 @@ public class TestHttpRequestExecutor {
         final ClassicHttpRequest request = new BasicClassicHttpRequest("HEAD", "/");
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(200, "OK"));
@@ -219,7 +219,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn, Mockito.never()).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
     }
 
     @Test
@@ -234,7 +234,7 @@ public class TestHttpRequestExecutor {
         request.setEntity(entity);
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(200, "OK"));
@@ -247,7 +247,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
     }
 
     @Test
@@ -263,7 +263,7 @@ public class TestHttpRequestExecutor {
         request.setEntity(entity);
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(100, "Continue"),
@@ -279,7 +279,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
     }
 
     @Test
@@ -295,7 +295,7 @@ public class TestHttpRequestExecutor {
         request.setEntity(entity);
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(402, "OK"));
@@ -311,7 +311,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
     }
 
     @Test
@@ -327,7 +327,7 @@ public class TestHttpRequestExecutor {
         request.setEntity(entity);
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(101, "OK"));
@@ -354,7 +354,7 @@ public class TestHttpRequestExecutor {
         request.setEntity(entity);
 
         executor.preProcess(request, httprocessor, context);
-        Mockito.verify(httprocessor).process(request, context);
+        Mockito.verify(httprocessor).process(request, request.getEntity(), context);
 
         Mockito.when(conn.receiveResponseHeader()).thenReturn(
                 new BasicClassicHttpResponse(200, "OK"));
@@ -369,7 +369,7 @@ public class TestHttpRequestExecutor {
         Mockito.verify(conn).receiveResponseEntity(response);
 
         executor.postProcess(response, httprocessor, context);
-        Mockito.verify(httprocessor).process(response, context);
+        Mockito.verify(httprocessor).process(response, response.getEntity(), context);
     }
 
     @Test



Mime
View raw message