org.apache.http.protocol

## Class HttpCoreContext

- java.lang.Object
- - org.apache.http.protocol.HttpCoreContext

All Implemented Interfaces:
  HttpContext

    @NotThreadSafe
    public class HttpCoreContext
    extends Object
    implements HttpContext

Implementation of `HttpContext` that provides convenience setters for user assignable attributes and getter for readable attributes.

Since:
  4.3

### Field Summary

Fields
`static String` `HTTP_CONNECTION` Attribute name of a `HttpConnection` object that represents the actual HTTP connection.
`static String` `HTTP_REQ_SENT` Attribute name of a `Boolean` object that represents the the flag indicating whether the actual request has been fully transmitted to the target host.
`static String` `HTTP_REQUEST` Attribute name of a `HttpRequest` object that represents the actual HTTP request.
`static String` `HTTP_RESPONSE` Attribute name of a `HttpResponse` object that represents the actual HTTP response.
`static String` `HTTP_TARGET_HOST` Attribute name of a `HttpHost` object that represents the connection target.

### Fields inherited from interface org.apache.http.protocol.HttpContext

`RESERVED_PREFIX`

### Constructor Summary

Constructors
Constructor and Description
`HttpCoreContext()`
`HttpCoreContext(HttpContext context)`

### Method Summary

Methods
`static HttpCoreContext` `adapt(HttpContext context)`
`static HttpCoreContext` `create()`
`Object` `getAttribute(String id)` Obtains attribute with the given name.
`<T> T` `getAttribute(String attribname, Class<T> clazz)`
`HttpConnection` `getConnection()`
`<T extends HttpConnection> T` `getConnection(Class<T> clazz)`
`HttpRequest` `getRequest()`
`HttpResponse` `getResponse()`
`HttpHost` `getTargetHost()`
`boolean` `isRequestSent()`
`Object` `removeAttribute(String id)` Removes attribute with the given name from the context.
`void` `setAttribute(String id, Object obj)` Sets value of the attribute with the given name.
`void` `setTargetHost(HttpHost host)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### HTTP_CONNECTION

    public static final String HTTP_CONNECTION

Attribute name of a `HttpConnection` object that represents the actual HTTP connection.

See Also:
  Constant Field Values

#### HTTP_REQUEST

    public static final String HTTP_REQUEST

Attribute name of a `HttpRequest` object that represents the actual HTTP request.

See Also:
  Constant Field Values

#### HTTP_RESPONSE

    public static final String HTTP_RESPONSE

Attribute name of a `HttpResponse` object that represents the actual HTTP response.

See Also:
  Constant Field Values

#### HTTP_TARGET_HOST

    public static final String HTTP_TARGET_HOST

Attribute name of a `HttpHost` object that represents the connection target.

See Also:
  Constant Field Values

#### HTTP_REQ_SENT

    public static final String HTTP_REQ_SENT

Attribute name of a `Boolean` object that represents the the flag indicating whether the actual request has been fully transmitted to the target host.

See Also:
  Constant Field Values

### Constructor Detail

#### HttpCoreContext

    public HttpCoreContext(HttpContext context)

#### HttpCoreContext

    public HttpCoreContext()

### Method Detail

#### create

    public static HttpCoreContext create()

#### adapt

    public static HttpCoreContext adapt(HttpContext context)

#### getAttribute

    public Object getAttribute(String id)

Description copied from interface: `HttpContext`
Obtains attribute with the given name.

Specified by:
  `getAttribute` in interface `HttpContext`
Parameters:
  `id` - the attribute name.
Returns:
  attribute value, or `null` if not set.

#### setAttribute

    public void setAttribute(String id,
                    Object obj)

Description copied from interface: `HttpContext`
Sets value of the attribute with the given name.

Specified by:
  `setAttribute` in interface `HttpContext`
Parameters:
  `id` - the attribute name.
  `obj` - the attribute value.

#### removeAttribute

    public Object removeAttribute(String id)

Description copied from interface: `HttpContext`
Removes attribute with the given name from the context.

Specified by:
  `removeAttribute` in interface `HttpContext`
Parameters:
  `id` - the attribute name.
Returns:
  attribute value, or `null` if not set.

#### getAttribute

    public <T> T getAttribute(String attribname,
                     Class<T> clazz)

#### getConnection

    public <T extends HttpConnection> T getConnection(Class<T> clazz)

#### getConnection

    public HttpConnection getConnection()

#### getRequest

    public HttpRequest getRequest()

#### isRequestSent

    public boolean isRequestSent()

#### getResponse

    public HttpResponse getResponse()

#### setTargetHost

    public void setTargetHost(HttpHost host)

#### getTargetHost

    public HttpHost getTargetHost()