public final class OAuth2AuthorizedClientArgumentResolver
extends java.lang.Object
implements org.springframework.web.method.support.HandlerMethodArgumentResolver
HandlerMethodArgumentResolver that is capable of
resolving a method parameter to an argument value of type
OAuth2AuthorizedClient.
For example:
@Controller
public class MyController {
@GetMapping("/authorized-client")
public String authorizedClient(@RegisteredOAuth2AuthorizedClient("login-client") OAuth2AuthorizedClient authorizedClient) {
// do something with authorizedClient
}
}
RegisteredOAuth2AuthorizedClient| Constructor and Description |
|---|
OAuth2AuthorizedClientArgumentResolver(ClientRegistrationRepository clientRegistrationRepository,
OAuth2AuthorizedClientRepository authorizedClientRepository)
Constructs an
OAuth2AuthorizedClientArgumentResolver using the provided
parameters. |
OAuth2AuthorizedClientArgumentResolver(OAuth2AuthorizedClientManager authorizedClientManager)
Constructs an
OAuth2AuthorizedClientArgumentResolver using the provided
parameters. |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
resolveArgument(org.springframework.core.MethodParameter parameter,
org.springframework.web.method.support.ModelAndViewContainer mavContainer,
org.springframework.web.context.request.NativeWebRequest webRequest,
org.springframework.web.bind.support.WebDataBinderFactory binderFactory) |
void |
setClientCredentialsTokenResponseClient(OAuth2AccessTokenResponseClient<OAuth2ClientCredentialsGrantRequest> clientCredentialsTokenResponseClient)
Deprecated.
Use
OAuth2AuthorizedClientArgumentResolver(OAuth2AuthorizedClientManager)
instead. Create an instance of
ClientCredentialsOAuth2AuthorizedClientProvider configured with a
DefaultClientCredentialsTokenResponseClient (or a custom one) and than supply it
to
DefaultOAuth2AuthorizedClientManager. |
boolean |
supportsParameter(org.springframework.core.MethodParameter parameter) |
public OAuth2AuthorizedClientArgumentResolver(OAuth2AuthorizedClientManager authorizedClientManager)
OAuth2AuthorizedClientArgumentResolver using the provided
parameters.authorizedClientManager - the OAuth2AuthorizedClientManager which
manages the authorized client(s)public OAuth2AuthorizedClientArgumentResolver(ClientRegistrationRepository clientRegistrationRepository, OAuth2AuthorizedClientRepository authorizedClientRepository)
OAuth2AuthorizedClientArgumentResolver using the provided
parameters.clientRegistrationRepository - the repository of client registrationsauthorizedClientRepository - the repository of authorized clientspublic boolean supportsParameter(org.springframework.core.MethodParameter parameter)
supportsParameter in interface org.springframework.web.method.support.HandlerMethodArgumentResolver@NonNull
public java.lang.Object resolveArgument(org.springframework.core.MethodParameter parameter,
@Nullable
org.springframework.web.method.support.ModelAndViewContainer mavContainer,
org.springframework.web.context.request.NativeWebRequest webRequest,
@Nullable
org.springframework.web.bind.support.WebDataBinderFactory binderFactory)
resolveArgument in interface org.springframework.web.method.support.HandlerMethodArgumentResolver@Deprecated public void setClientCredentialsTokenResponseClient(OAuth2AccessTokenResponseClient<OAuth2ClientCredentialsGrantRequest> clientCredentialsTokenResponseClient)
OAuth2AuthorizedClientArgumentResolver(OAuth2AuthorizedClientManager)
instead. Create an instance of
ClientCredentialsOAuth2AuthorizedClientProvider configured with a
DefaultClientCredentialsTokenResponseClient (or a custom one) and than supply it
to
DefaultOAuth2AuthorizedClientManager.client_credentials grant.clientCredentialsTokenResponseClient - the client used when requesting an
access token credential at the Token Endpoint for the client_credentials
grant