Index: module-main/src/main/java/org/apache/http/impl/DefaultHttpResponseFactory.java =================================================================== --- module-main/src/main/java/org/apache/http/impl/DefaultHttpResponseFactory.java (revision 503381) +++ module-main/src/main/java/org/apache/http/impl/DefaultHttpResponseFactory.java (working copy) @@ -38,6 +38,7 @@ import org.apache.http.StatusLine; import org.apache.http.message.BasicHttpResponse; import org.apache.http.message.BasicStatusLine; +import org.apache.http.protocol.HttpContext; import org.apache.http.ReasonPhraseCatalog; import org.apache.http.impl.EnglishReasonPhraseCatalog; @@ -81,12 +82,12 @@ // non-javadoc, see interface HttpResponseFactory public HttpResponse newHttpResponse(final HttpVersion ver, - final int status) { + final int status, + HttpContext context) { if (ver == null) { throw new IllegalArgumentException("HTTP version may not be null"); } - //@@@ TODO: how to get to the context? - final String reason = reasonCatalog.getReason(status, null); + final String reason = reasonCatalog.getReason(status, context); StatusLine statusline = new BasicStatusLine(ver, status, reason); return new BasicHttpResponse(statusline); } Index: module-main/src/main/java/org/apache/http/protocol/HttpService.java =================================================================== --- module-main/src/main/java/org/apache/http/protocol/HttpService.java (revision 503379) +++ module-main/src/main/java/org/apache/http/protocol/HttpService.java (working copy) @@ -125,12 +125,14 @@ ver = HttpVersion.HTTP_1_1; } - response = this.responseFactory.newHttpResponse(ver, HttpStatus.SC_OK); + response = this.responseFactory.newHttpResponse + (ver, HttpStatus.SC_OK, context); response.getParams().setDefaults(this.params); if (request instanceof HttpEntityEnclosingRequest) { if (((HttpEntityEnclosingRequest) request).expectContinue()) { - HttpResponse ack = this.responseFactory.newHttpResponse(ver, HttpStatus.SC_CONTINUE); + HttpResponse ack = this.responseFactory.newHttpResponse + (ver, HttpStatus.SC_CONTINUE, context); ack.getParams().setDefaults(this.params); conn.sendResponseHeader(ack); conn.flush(); @@ -151,8 +153,9 @@ } } } catch (HttpException ex) { - response = this.responseFactory.newHttpResponse(HttpVersion.HTTP_1_0, - HttpStatus.SC_INTERNAL_SERVER_ERROR); + response = this.responseFactory.newHttpResponse + (HttpVersion.HTTP_1_0, HttpStatus.SC_INTERNAL_SERVER_ERROR, + context); response.getParams().setDefaults(this.params); handleException(ex, response); } Index: module-main/src/main/java/org/apache/http/HttpResponseFactory.java =================================================================== --- module-main/src/main/java/org/apache/http/HttpResponseFactory.java (revision 503379) +++ module-main/src/main/java/org/apache/http/HttpResponseFactory.java (working copy) @@ -31,6 +31,9 @@ package org.apache.http; +import org.apache.http.protocol.HttpContext; + + /** * A factory for {@link HttpResponse HttpResponse} objects. * @@ -42,7 +45,8 @@ */ public interface HttpResponseFactory { - HttpResponse newHttpResponse(HttpVersion ver, int status); + HttpResponse newHttpResponse(HttpVersion ver, int status, + HttpContext context); HttpResponse newHttpResponse(StatusLine statusline); Index: module-nio/src/main/java/org/apache/http/nio/protocol/BufferingHttpServiceHandler.java =================================================================== --- module-nio/src/main/java/org/apache/http/nio/protocol/BufferingHttpServiceHandler.java (revision 503379) +++ module-nio/src/main/java/org/apache/http/nio/protocol/BufferingHttpServiceHandler.java (working copy) @@ -158,7 +158,7 @@ if (request instanceof HttpEntityEnclosingRequest) { if (((HttpEntityEnclosingRequest) request).expectContinue()) { - HttpResponse ack = this.responseFactory.newHttpResponse(ver, 100); + HttpResponse ack = this.responseFactory.newHttpResponse(ver, 100, context); conn.submitResponse(ack); } // Request content is expected. @@ -295,7 +295,7 @@ HttpRequest request = conn.getHttpRequest(); HttpVersion ver = request.getRequestLine().getHttpVersion(); HttpResponse response = this.responseFactory.newHttpResponse( - ver, HttpStatus.SC_BAD_REQUEST); + ver, HttpStatus.SC_BAD_REQUEST, conn.getContext()); int code = HttpStatus.SC_INTERNAL_SERVER_ERROR; if (ex instanceof MethodNotSupportedException) { @@ -326,7 +326,7 @@ ver = HttpVersion.HTTP_1_1; } - HttpResponse response = this.responseFactory.newHttpResponse(ver, HttpStatus.SC_OK); + HttpResponse response = this.responseFactory.newHttpResponse(ver, HttpStatus.SC_OK, conn.getContext()); response.getParams().setDefaults(this.params); context.setAttribute(HttpExecutionContext.HTTP_REQUEST, request); @@ -376,4 +376,4 @@ } } -} \ No newline at end of file +} Index: module-nio/src/main/java/org/apache/http/nio/protocol/ThrottlingHttpServiceHandler.java =================================================================== --- module-nio/src/main/java/org/apache/http/nio/protocol/ThrottlingHttpServiceHandler.java (revision 503405) +++ module-nio/src/main/java/org/apache/http/nio/protocol/ThrottlingHttpServiceHandler.java (working copy) @@ -240,7 +240,7 @@ if (request instanceof HttpEntityEnclosingRequest) { if (((HttpEntityEnclosingRequest) request).expectContinue()) { HttpVersion ver = request.getRequestLine().getHttpVersion(); - HttpResponse ack = this.responseFactory.newHttpResponse(ver, 100); + HttpResponse ack = this.responseFactory.newHttpResponse(ver, 100, context); try { conn.submitResponse(ack); } catch (HttpException ex) { @@ -344,7 +344,7 @@ HttpRequest request = conn.getHttpRequest(); HttpVersion ver = request.getRequestLine().getHttpVersion(); HttpResponse response = this.responseFactory.newHttpResponse( - ver, HttpStatus.SC_BAD_REQUEST); + ver, HttpStatus.SC_BAD_REQUEST, conn.getContext()); int code = HttpStatus.SC_INTERNAL_SERVER_ERROR; if (ex instanceof MethodNotSupportedException) { @@ -375,7 +375,7 @@ ver = HttpVersion.HTTP_1_1; } - HttpResponse response = this.responseFactory.newHttpResponse(ver, HttpStatus.SC_OK); + HttpResponse response = this.responseFactory.newHttpResponse(ver, HttpStatus.SC_OK, conn.getContext()); response.getParams().setDefaults(this.params); context.setAttribute(HttpExecutionContext.HTTP_REQUEST, request); @@ -423,4 +423,4 @@ } } -} \ No newline at end of file +}