Class AbstractRestClientOAuth2AccessTokenResponseClient<T extends AbstractOAuth2AuthorizationGrantRequest>
java.lang.Object
org.springframework.security.oauth2.client.endpoint.AbstractRestClientOAuth2AccessTokenResponseClient<T>
- Type Parameters:
T
- type of grant request
- All Implemented Interfaces:
OAuth2AccessTokenResponseClient<T>
- Direct Known Subclasses:
RestClientAuthorizationCodeTokenResponseClient
,RestClientClientCredentialsTokenResponseClient
,RestClientJwtBearerTokenResponseClient
,RestClientRefreshTokenTokenResponseClient
,RestClientTokenExchangeTokenResponseClient
public abstract class AbstractRestClientOAuth2AccessTokenResponseClient<T extends AbstractOAuth2AuthorizationGrantRequest>
extends Object
implements OAuth2AccessTokenResponseClient<T>
Abstract base class for
RestClient
-based implementations of
OAuth2AccessTokenResponseClient
that communicate to the Authorization Server's
Token Endpoint.
Submits a form request body specific to the type of grant request and accepts a JSON response body containing an OAuth 2.0 Access Token Response or OAuth 2.0 Error Response.
- Since:
- 6.4
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionfinal void
addHeadersConverter
(org.springframework.core.convert.converter.Converter<T, org.springframework.http.HttpHeaders> headersConverter) Add (compose) the providedheadersConverter
to the currentConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aHttpHeaders
used in the OAuth 2.0 Access Token Request headers.final void
addParametersConverter
(org.springframework.core.convert.converter.Converter<T, org.springframework.util.MultiValueMap<String, String>> parametersConverter) Add (compose) the providedparametersConverter
to the currentConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aMultiValueMap
used in the OAuth 2.0 Access Token Request body.getTokenResponse
(T grantRequest) Exchanges the authorization grant credential, provided in the authorization grant request, for an access token credential at the Authorization Server's Token Endpoint.final void
setHeadersConverter
(org.springframework.core.convert.converter.Converter<T, org.springframework.http.HttpHeaders> headersConverter) Sets theConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aHttpHeaders
used in the OAuth 2.0 Access Token Request headers.final void
setParametersConverter
(org.springframework.core.convert.converter.Converter<T, org.springframework.util.MultiValueMap<String, String>> parametersConverter) Sets theConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aMultiValueMap
used in the OAuth 2.0 Access Token Request body.void
setParametersCustomizer
(Consumer<org.springframework.util.MultiValueMap<String, String>> parametersCustomizer) Sets theConsumer
used for customizing the OAuth 2.0 Access Token parameters, which allows for parameters to be added, overwritten or removed.final void
setRestClient
(org.springframework.web.client.RestClient restClient) Sets theRestClient
used when requesting the OAuth 2.0 Access Token Response.
-
Method Details
-
getTokenResponse
Description copied from interface:OAuth2AccessTokenResponseClient
Exchanges the authorization grant credential, provided in the authorization grant request, for an access token credential at the Authorization Server's Token Endpoint.- Specified by:
getTokenResponse
in interfaceOAuth2AccessTokenResponseClient<T extends AbstractOAuth2AuthorizationGrantRequest>
- Parameters:
grantRequest
- the authorization grant request that contains the authorization grant credential- Returns:
- an
OAuth2AccessTokenResponse
that contains theaccess token
credential
-
setRestClient
public final void setRestClient(org.springframework.web.client.RestClient restClient) Sets theRestClient
used when requesting the OAuth 2.0 Access Token Response.- Parameters:
restClient
- theRestClient
used when requesting the Access Token Response
-
setHeadersConverter
public final void setHeadersConverter(org.springframework.core.convert.converter.Converter<T, org.springframework.http.HttpHeaders> headersConverter) Sets theConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aHttpHeaders
used in the OAuth 2.0 Access Token Request headers.- Parameters:
headersConverter
- theConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
toHttpHeaders
-
addHeadersConverter
public final void addHeadersConverter(org.springframework.core.convert.converter.Converter<T, org.springframework.http.HttpHeaders> headersConverter) Add (compose) the providedheadersConverter
to the currentConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aHttpHeaders
used in the OAuth 2.0 Access Token Request headers.- Parameters:
headersConverter
- theConverter
to add (compose) to the currentConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
to aHttpHeaders
-
setParametersConverter
public final void setParametersConverter(org.springframework.core.convert.converter.Converter<T, org.springframework.util.MultiValueMap<String, String>> parametersConverter) Sets theConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aMultiValueMap
used in the OAuth 2.0 Access Token Request body.- Parameters:
parametersConverter
- theConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
toMultiValueMap
-
addParametersConverter
public final void addParametersConverter(org.springframework.core.convert.converter.Converter<T, org.springframework.util.MultiValueMap<String, String>> parametersConverter) Add (compose) the providedparametersConverter
to the currentConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
instance to aMultiValueMap
used in the OAuth 2.0 Access Token Request body.- Parameters:
parametersConverter
- theConverter
to add (compose) to the currentConverter
used for converting theAbstractOAuth2AuthorizationGrantRequest
to aMultiValueMap
-
setParametersCustomizer
public void setParametersCustomizer(Consumer<org.springframework.util.MultiValueMap<String, String>> parametersCustomizer) Sets theConsumer
used for customizing the OAuth 2.0 Access Token parameters, which allows for parameters to be added, overwritten or removed.- Parameters:
parametersCustomizer
- theConsumer
to customize the parameters
-