void setResponseStatus(final HttpContext context, final CacheResponseStatus value) { if (context != null) { context.setAttribute(HttpCacheContext.CACHE_RESPONSE_STATUS, value); } }
@SuppressWarnings("unchecked") private Lookup<ConnectionSocketFactory> getSocketFactoryRegistry(final HttpContext context) { Lookup<ConnectionSocketFactory> reg = (Lookup<ConnectionSocketFactory>) context.getAttribute( SOCKET_FACTORY_REGISTRY); if (reg == null) { reg = this.socketFactoryRegistry; } return reg; }
/** * @since 5.0 */ @Override public ProtocolVersion getProtocolVersion() { return this.context.getProtocolVersion(); }
final ProtocolVersion transportVersion = response.getVersion(); if (transportVersion != null) { context.setProtocolVersion(transportVersion); context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response); processor.process(response, response.getEntity(), context);
@Test public void testContextOperations() { final HttpContext parentContext = new BasicHttpContext(null); final HttpContext currentContext = new BasicHttpContext(parentContext); parentContext.setAttribute("param1", "1"); parentContext.setAttribute("param2", "2"); currentContext.setAttribute("param3", "3"); currentContext.setAttribute("param2", "4"); Assert.assertEquals("1", parentContext.getAttribute("param1")); Assert.assertEquals("2", parentContext.getAttribute("param2")); Assert.assertEquals(null, parentContext.getAttribute("param3")); Assert.assertEquals("1", currentContext.getAttribute("param1")); Assert.assertEquals("4", currentContext.getAttribute("param2")); Assert.assertEquals("3", currentContext.getAttribute("param3")); Assert.assertEquals(null, currentContext.getAttribute("param4")); currentContext.removeAttribute("param1"); currentContext.removeAttribute("param2"); currentContext.removeAttribute("param3"); currentContext.removeAttribute("param4"); Assert.assertEquals("1", currentContext.getAttribute("param1")); Assert.assertEquals("2", currentContext.getAttribute("param2")); Assert.assertEquals(null, currentContext.getAttribute("param3")); Assert.assertEquals(null, currentContext.getAttribute("param4")); }
/** * @since 5.0 */ @Override public void setProtocolVersion(final ProtocolVersion version) { this.context.setProtocolVersion(version); }
@Test public void testEmptyContextOperations() { final HttpContext currentContext = new BasicHttpContext(null); Assert.assertEquals(null, currentContext.getAttribute("param1")); currentContext.removeAttribute("param1"); Assert.assertEquals(null, currentContext.getAttribute("param1")); }
@Override public Object removeAttribute(final String id) { return context.removeAttribute(id); }
final ProtocolVersion transportVersion = response.getVersion(); if (transportVersion != null) { context.setProtocolVersion(transportVersion); context.setAttribute(HttpCoreContext.HTTP_RESPONSE, response); processor.process(response, response.getEntity(), context);
@Test public void testContextInvalidInput() throws Exception { final HttpContext currentContext = new BasicHttpContext(null); try { currentContext.setAttribute(null, null); Assert.fail("IllegalArgumentException should have been thrown"); } catch (final IllegalArgumentException ex) { // expected } try { currentContext.getAttribute(null); Assert.fail("IllegalArgumentException should have been thrown"); } catch (final IllegalArgumentException ex) { // expected } try { currentContext.removeAttribute(null); Assert.fail("IllegalArgumentException should have been thrown"); } catch (final IllegalArgumentException ex) { // expected } }
/** * @since 5.0 */ @Override public void setProtocolVersion(final ProtocolVersion version) { this.context.setProtocolVersion(version); }
@Override public Object removeAttribute(final String id) { return context.removeAttribute(id); }
final ProtocolVersion transportVersion = request.getVersion(); if (transportVersion != null) { context.setProtocolVersion(transportVersion); context.setAttribute(HttpCoreContext.SSL_SESSION, conn.getSSLSession()); context.setAttribute(HttpCoreContext.CONNECTION_ENDPOINT, conn.getEndpointDetails()); context.setAttribute(HttpCoreContext.HTTP_REQUEST, request); this.processor.process(request, request.getEntity(), context); handleException(ex, errorResponse); errorResponse.setHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE); context.setAttribute(HttpCoreContext.HTTP_RESPONSE, errorResponse); this.processor.process(errorResponse, errorResponse.getEntity(), context);
void setResponseStatus(final HttpContext context, final CacheResponseStatus value) { if (context != null) { context.setAttribute(HttpCacheContext.CACHE_RESPONSE_STATUS, value); } }
/** * @since 5.0 */ @Override public ProtocolVersion getProtocolVersion() { return this.context.getProtocolVersion(); }
@Test public void testNoContentResponseHttp10() throws Exception { // Use HTTP 1.0 context.setProtocolVersion(HttpVersion.HTTP_1_0); final HttpResponse response = new BasicHttpResponse(HttpStatus.SC_NO_CONTENT, "No Content"); Assert.assertFalse(reuseStrategy.keepAlive(null, response, context)); }
@Override public Object getAttribute(final String id) { return context.getAttribute(id); }
final ProtocolVersion transportVersion = request.getVersion(); if (transportVersion != null) { context.setProtocolVersion(transportVersion); context.setAttribute(HttpCoreContext.SSL_SESSION, conn.getSSLSession()); context.setAttribute(HttpCoreContext.CONNECTION_ENDPOINT, conn.getEndpointDetails()); context.setAttribute(HttpCoreContext.HTTP_REQUEST, request); this.processor.process(request, request.getEntity(), context); handleException(ex, errorResponse); errorResponse.setHeader(HttpHeaders.CONNECTION, HeaderElements.CLOSE); context.setAttribute(HttpCoreContext.HTTP_RESPONSE, errorResponse); this.processor.process(errorResponse, errorResponse.getEntity(), context);
@Override public Object setAttribute(final String id, final Object obj) { return context.setAttribute(id, obj); }
@Override public void process( final HttpResponse response, final EntityDetails entity, final HttpContext context) throws HttpException, IOException { Args.notNull(context, "HTTP context"); final ProtocolVersion ver = context.getProtocolVersion(); if (ver.getMajor() < 2) { super.process(response, entity, context); } } }