public abstract class AbstractOAuth2ApiBinding extends Object implements ApiBinding
Modifier | Constructor and Description |
---|---|
protected |
AbstractOAuth2ApiBinding()
Constructs the API template without user authorization.
|
protected |
AbstractOAuth2ApiBinding(String accessToken)
Constructs the API template with OAuth credentials necessary to perform operations on behalf of a user.
|
protected |
AbstractOAuth2ApiBinding(String accessToken,
TokenStrategy tokenStrategy)
Constructs the API template with OAuth credentials necessary to perform operations on behalf of a user.
|
Modifier and Type | Method and Description |
---|---|
protected void |
configureRestTemplate(RestTemplate restTemplate)
Subclassing hook to enable customization of the RestTemplate used to consume provider API resources.
|
protected ByteArrayHttpMessageConverter |
getByteArrayMessageConverter()
Returns a
ByteArrayHttpMessageConverter to be used by the internal RestTemplate when consuming image or other binary resources. |
protected FormHttpMessageConverter |
getFormMessageConverter()
Returns an
FormHttpMessageConverter to be used by the internal RestTemplate . |
protected MappingJackson2HttpMessageConverter |
getJsonMessageConverter()
Returns a
MappingJackson2HttpMessageConverter to be used by the internal RestTemplate . |
protected List<HttpMessageConverter<?>> |
getMessageConverters()
Returns a list of
HttpMessageConverter s to be used by the internal RestTemplate . |
protected OAuth2Version |
getOAuth2Version()
Returns the version of OAuth2 the API implements.
|
RestTemplate |
getRestTemplate()
Obtains a reference to the REST client backing this API binding and used to perform API calls.
|
boolean |
isAuthorized()
Returns true if this API binding has been authorized on behalf of a specific user.
|
void |
setRequestFactory(ClientHttpRequestFactory requestFactory)
Set the ClientHttpRequestFactory.
|
protected AbstractOAuth2ApiBinding()
protected AbstractOAuth2ApiBinding(String accessToken)
accessToken
- the access tokenprotected AbstractOAuth2ApiBinding(String accessToken, TokenStrategy tokenStrategy)
accessToken
- the access tokentokenStrategy
- Specifies how access tokens are sent on API requests. Defaults to sending them in Authorization header.public void setRequestFactory(ClientHttpRequestFactory requestFactory)
requestFactory
- the request factorypublic boolean isAuthorized()
ApiBinding
isAuthorized
in interface ApiBinding
MissingAuthorizationException
public RestTemplate getRestTemplate()
RestTemplate
that backs this API binding.RestTemplate.setMessageConverters(java.util.List)
,
RestTemplate.setErrorHandler(org.springframework.web.client.ResponseErrorHandler)
protected OAuth2Version getOAuth2Version()
OAuth2Version.BEARER
indicating versions of OAuth2 that apply the bearer token scheme.
Subclasses may override to return another version.OAuth2Version
protected void configureRestTemplate(RestTemplate restTemplate)
restTemplate
- the RestTemplate to configure.protected List<HttpMessageConverter<?>> getMessageConverters()
HttpMessageConverter
s to be used by the internal RestTemplate
.
By default, this includes a StringHttpMessageConverter
, a MappingJackson2HttpMessageConverter
, a ByteArrayHttpMessageConverter
, and a FormHttpMessageConverter
.
The FormHttpMessageConverter
is set to use "UTF-8" character encoding.
Override this method to add additional message converters or to replace the default list of message converters.protected FormHttpMessageConverter getFormMessageConverter()
FormHttpMessageConverter
to be used by the internal RestTemplate
.
By default, the message converter is set to use "UTF-8" character encoding.
Override to customize the message converter (for example, to set supported media types or message converters for the parts of a multipart message).
To remove/replace this or any of the other message converters that are registered by default, override the getMessageConverters() method instead.FormHttpMessageConverter
to be used by the internal RestTemplate
.protected MappingJackson2HttpMessageConverter getJsonMessageConverter()
MappingJackson2HttpMessageConverter
to be used by the internal RestTemplate
.
Override to customize the message converter (for example, to set a custom object mapper or supported media types).
To remove/replace this or any of the other message converters that are registered by default, override the getMessageConverters() method instead.MappingJackson2HttpMessageConverter
to be used by the internal RestTemplate
.protected ByteArrayHttpMessageConverter getByteArrayMessageConverter()
ByteArrayHttpMessageConverter
to be used by the internal RestTemplate
when consuming image or other binary resources.
By default, the message converter supports "image/jpeg", "image/gif", and "image/png" media types.
Override to customize the message converter (for example, to set supported media types).
To remove/replace this or any of the other message converters that are registered by default, override the getMessageConverters() method instead.ByteArrayHttpMessageConverter
to be used by the internal RestTemplate
when consuming image or other binary resources.