Package org.springframework.web.client

# Class HttpMessageConverterExtractor<T>

java.lang.Object
org.springframework.web.client.HttpMessageConverterExtractor<T>

Type Parameters:
  `T` - the data type

All Implemented Interfaces:
  `ResponseExtractor<T>`

public class HttpMessageConverterExtractor<T> extends Object implements ResponseExtractor<T>
Response extractor that uses the given entity converters to convert the response into a type `T`.

Since:
  3.0
Author:
  Arjen Poutsma, Sam Brannen
See Also:
  - `RestTemplate`

## Constructor Summary

Constructors
Constructor
Description
`HttpMessageConverterExtractor(Class<T> responseType, List<HttpMessageConverter<?>> messageConverters)`
Create a new instance of the `HttpMessageConverterExtractor` with the given response type and message converters.
`HttpMessageConverterExtractor(Type responseType, List<HttpMessageConverter<?>> messageConverters)`
Creates a new instance of the `HttpMessageConverterExtractor` with the given response type and message converters.

## Method Summary

Modifier and Type
Method
Description
`T`
`extractData(ClientHttpResponse response)`
Extract data from the given `ClientHttpResponse` and return it.
`protected MediaType`
`getContentType(ClientHttpResponse response)`
Determine the Content-Type of the response based on the "Content-Type" header or otherwise default to `MediaType.APPLICATION_OCTET_STREAM`.

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

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

## Constructor Details

### HttpMessageConverterExtractor

public HttpMessageConverterExtractor(Class<T> responseType, List<HttpMessageConverter<?>> messageConverters)
Create a new instance of the `HttpMessageConverterExtractor` with the given response type and message converters. The given converters must support the response type.

### HttpMessageConverterExtractor

public HttpMessageConverterExtractor(Type responseType, List<HttpMessageConverter<?>> messageConverters)
Creates a new instance of the `HttpMessageConverterExtractor` with the given response type and message converters. The given converters must support the response type.

## Method Details

### extractData

@Nullable public T extractData(ClientHttpResponse response) throws IOException
Description copied from interface: `ResponseExtractor`
Extract data from the given `ClientHttpResponse` and return it.

Specified by:
  `extractData` in interface `ResponseExtractor<T>`
Parameters:
  `response` - the HTTP response
Returns:
  the extracted data
Throws:
  `IOException` - in case of I/O errors

### getContentType

protected MediaType getContentType(ClientHttpResponse response)
Determine the Content-Type of the response based on the "Content-Type" header or otherwise default to `MediaType.APPLICATION_OCTET_STREAM`.

Parameters:
  `response` - the response
Returns:
  the MediaType, or "application/octet-stream"