org.restlet.engine.http.adapter

## Class ClientAdapter

- java.lang.Object
- - org.restlet.engine.http.adapter.Adapter
  - - org.restlet.engine.http.adapter.ClientAdapter

    public class ClientAdapter
    extends Adapter

Converter of high-level uniform calls into low-level HTTP client calls.

Author:
  Jerome Louvel

### Constructor Summary

Constructors
Constructor and Description
`ClientAdapter(Context context)` Constructor.

### Method Summary

Methods
`void` `commit(ClientCall httpCall, Request request, Response response)` Commits the changes to a handled HTTP client call back into the original uniform call.
`protected void` `readResponseHeaders(ClientCall httpCall, Response response)` Reads the response headers of a handled HTTP client call to update the original uniform call.
`ClientCall` `toSpecific(HttpClientHelper client, Request request)` Converts a low-level HTTP call into a high-level uniform call.
`void` `updateResponse(Response response, Status status, ClientCall httpCall)` Updates the response with information from the lower-level HTTP client call.

### Methods inherited from class org.restlet.engine.http.adapter.Adapter

`getContext, getLogger`

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

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

### Constructor Detail

#### ClientAdapter

    public ClientAdapter(Context context)

Constructor.

Parameters:
  `context` - The context to use.

### Method Detail

#### commit

    public void commit(ClientCall httpCall,
              Request request,
              Response response)
                throws java.lang.Exception

Commits the changes to a handled HTTP client call back into the original uniform call. The default implementation first invokes the "addResponseHeaders" then asks the "htppCall" to send the response back to the client.

Parameters:
  `httpCall` - The original HTTP call.
  `request` - The high-level request.
  `response` - The high-level response.
Throws:
  `java.lang.Exception`

#### readResponseHeaders

    protected void readResponseHeaders(ClientCall httpCall,
                           Response response)

Reads the response headers of a handled HTTP client call to update the original uniform call.

Parameters:
  `httpCall` - The handled HTTP client call.
  `response` - The high-level response to update.

#### toSpecific

    public ClientCall toSpecific(HttpClientHelper client,
                        Request request)

Converts a low-level HTTP call into a high-level uniform call.

Parameters:
  `client` - The HTTP client that will handle the call.
  `request` - The high-level request.
Returns:
  A new high-level uniform call.

#### updateResponse

    public void updateResponse(Response response,
                      Status status,
                      ClientCall httpCall)

Updates the response with information from the lower-level HTTP client call.

Parameters:
  `response` - The response to update.
  `status` - The response status to apply.
  `httpCall` - The source HTTP client call.
Throws:
  `java.io.IOException`