Class OAuth2AuthorizedClientArgumentResolver

  • All Implemented Interfaces:
    org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver

    public final class OAuth2AuthorizedClientArgumentResolver
    extends java.lang.Object
    implements org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver
    An implementation of a 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 Mono<String> authorizedClient(@RegisteredOAuth2AuthorizedClient("login-client") OAuth2AuthorizedClient authorizedClient) {
             // do something with authorizedClient
         }
     }
     
    Since:
    5.1
    See Also:
    RegisteredOAuth2AuthorizedClient
    • Constructor Detail

      • OAuth2AuthorizedClientArgumentResolver

        public OAuth2AuthorizedClientArgumentResolver​(ReactiveClientRegistrationRepository clientRegistrationRepository,
                                                      ServerOAuth2AuthorizedClientRepository authorizedClientRepository)
        Constructs an OAuth2AuthorizedClientArgumentResolver using the provided parameters.
        Parameters:
        clientRegistrationRepository - the repository of client registrations
        authorizedClientRepository - the repository of authorized clients
    • Method Detail

      • supportsParameter

        public boolean supportsParameter​(org.springframework.core.MethodParameter parameter)
        Specified by:
        supportsParameter in interface org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver
      • resolveArgument

        public reactor.core.publisher.Mono<java.lang.Object> resolveArgument​(org.springframework.core.MethodParameter parameter,
                                                                             org.springframework.web.reactive.BindingContext bindingContext,
                                                                             org.springframework.web.server.ServerWebExchange exchange)
        Specified by:
        resolveArgument in interface org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver