@Filter(value="/**")
public class ClientCredentialsHttpClientFilter
extends java.lang.Object
implements io.micronaut.http.filter.HttpClientFilter
HttpClientFilter
to add an access token to outgoing request thanks to a Client Credentials request.Modifier and Type | Field and Description |
---|---|
protected io.micronaut.context.BeanContext |
beanContext |
protected java.util.Map<java.lang.String,ClientCredentialsClient> |
clientCredentialsClientsByName |
protected java.util.Map<java.lang.String,ClientCredentialsTokenPropagator> |
clientCredentialsTokenHandlerByName |
protected java.util.List<OauthClientConfiguration> |
oauthClientConfigurationCollection |
protected io.micronaut.http.util.OutgoingHttpRequestProcessor |
outgoingHttpRequestProcessor |
Constructor and Description |
---|
ClientCredentialsHttpClientFilter(io.micronaut.http.util.OutgoingHttpRequestProcessor outgoingHttpRequestProcessor,
java.util.stream.Stream<OauthClientConfiguration> oauthClientConfigurationStream,
ClientCredentialsTokenPropagator defaultTokenPropagator,
io.micronaut.context.BeanContext beanContext) |
Modifier and Type | Method and Description |
---|---|
org.reactivestreams.Publisher<? extends io.micronaut.http.HttpResponse<?>> |
doFilter(io.micronaut.http.MutableHttpRequest<?> request,
io.micronaut.http.filter.ClientFilterChain chain) |
protected java.util.Optional<ClientCredentialsClient> |
getClient(OauthClientConfiguration oauthClient) |
protected java.util.Optional<OauthClientConfiguration> |
getClientConfiguration(io.micronaut.http.HttpRequest<?> request) |
protected java.lang.String |
getScope(OauthClientConfiguration oauthClient) |
protected ClientCredentialsTokenPropagator |
getTokenHandler(OauthClientConfiguration oauthClient) |
protected final io.micronaut.http.util.OutgoingHttpRequestProcessor outgoingHttpRequestProcessor
protected final java.util.List<OauthClientConfiguration> oauthClientConfigurationCollection
protected final io.micronaut.context.BeanContext beanContext
protected final java.util.Map<java.lang.String,ClientCredentialsClient> clientCredentialsClientsByName
protected final java.util.Map<java.lang.String,ClientCredentialsTokenPropagator> clientCredentialsTokenHandlerByName
public ClientCredentialsHttpClientFilter(io.micronaut.http.util.OutgoingHttpRequestProcessor outgoingHttpRequestProcessor, java.util.stream.Stream<OauthClientConfiguration> oauthClientConfigurationStream, ClientCredentialsTokenPropagator defaultTokenPropagator, io.micronaut.context.BeanContext beanContext)
outgoingHttpRequestProcessor
- Utility to decide whether to process the requestoauthClientConfigurationStream
- OAuth 2.0 Clients configuration streamdefaultTokenPropagator
- The default token propagatorbeanContext
- Bean Contextpublic org.reactivestreams.Publisher<? extends io.micronaut.http.HttpResponse<?>> doFilter(io.micronaut.http.MutableHttpRequest<?> request, io.micronaut.http.filter.ClientFilterChain chain)
doFilter
in interface io.micronaut.http.filter.HttpClientFilter
@Nullable protected java.lang.String getScope(@NonNull OauthClientConfiguration oauthClient)
oauthClient
- OAuth 2.0 Client configurationprotected java.util.Optional<ClientCredentialsClient> getClient(@NonNull OauthClientConfiguration oauthClient)
oauthClient
- OAuth 2.0 Client configurationprotected ClientCredentialsTokenPropagator getTokenHandler(@NonNull OauthClientConfiguration oauthClient)
oauthClient
- OAuth 2.0 Client configurationprotected java.util.Optional<OauthClientConfiguration> getClientConfiguration(io.micronaut.http.HttpRequest<?> request)
request
- Http Request