@Factory
@Internal
public class DefaultNettyHttpClientRegistry
extends java.lang.Object
implements java.lang.AutoCloseable, io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>, io.micronaut.http.client.sse.SseClientRegistry<io.micronaut.http.client.sse.SseClient>, io.micronaut.http.client.StreamingHttpClientRegistry<io.micronaut.http.client.StreamingHttpClient>, io.micronaut.websocket.WebSocketClientRegistry<io.micronaut.websocket.WebSocketClient>, io.micronaut.http.client.ProxyHttpClientRegistry<io.micronaut.http.client.ProxyHttpClient>, io.micronaut.http.netty.channel.ChannelPipelineCustomizer
HttpClient interface based on Netty.HANDLER_ACCESS_LOGGER, HANDLER_CONNECT_TTL, HANDLER_FLOW_CONTROL, HANDLER_HTTP_AGGREGATOR, HANDLER_HTTP_CHUNK, HANDLER_HTTP_CLIENT_CODEC, HANDLER_HTTP_CLIENT_INIT, HANDLER_HTTP_COMPRESSOR, HANDLER_HTTP_DECODER, HANDLER_HTTP_DECOMPRESSOR, HANDLER_HTTP_KEEP_ALIVE, HANDLER_HTTP_PROXY, HANDLER_HTTP_SERVER_CODEC, HANDLER_HTTP_STREAM, HANDLER_HTTP_TO_HTTPS_REDIRECT, HANDLER_HTTP2_CONNECTION, HANDLER_HTTP2_PROTOCOL_NEGOTIATOR, HANDLER_HTTP2_SETTINGS, HANDLER_HTTP2_UPGRADE_REQUEST, HANDLER_IDLE_STATE, HANDLER_MICRONAUT_FULL_HTTP_RESPONSE, HANDLER_MICRONAUT_HTTP_RESPONSE_FULL, HANDLER_MICRONAUT_HTTP_RESPONSE_STREAM, HANDLER_MICRONAUT_INBOUND, HANDLER_MICRONAUT_SSE_CONTENT, HANDLER_MICRONAUT_SSE_EVENT_STREAM, HANDLER_MICRONAUT_WEBSOCKET_CLIENT, HANDLER_READ_TIMEOUT, HANDLER_SOCKS_5_PROXY, HANDLER_SSL, HANDLER_WEBSOCKET_UPGRADE| Constructor and Description |
|---|
DefaultNettyHttpClientRegistry(io.micronaut.http.client.HttpClientConfiguration defaultHttpClientConfiguration,
io.micronaut.http.filter.HttpClientFilterResolver httpClientFilterResolver,
io.micronaut.http.client.LoadBalancerResolver loadBalancerResolver,
NettyClientSslBuilder nettyClientSslBuilder,
java.util.concurrent.ThreadFactory threadFactory,
io.micronaut.http.codec.MediaTypeCodecRegistry codecRegistry,
io.micronaut.http.netty.channel.EventLoopGroupRegistry eventLoopGroupRegistry,
io.micronaut.http.netty.channel.EventLoopGroupFactory eventLoopGroupFactory,
io.micronaut.context.BeanContext beanContext,
java.util.List<io.micronaut.scheduling.instrument.InvocationInstrumenterFactory> invocationInstrumenterFactories)
Default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
void |
disposeClient(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata) |
void |
doOnConnect(io.micronaut.http.netty.channel.ChannelPipelineListener listener) |
DefaultHttpClient |
getClient(io.micronaut.core.annotation.AnnotationMetadata metadata) |
io.micronaut.http.client.HttpClient |
getClient(io.micronaut.http.HttpVersion httpVersion,
java.lang.String clientId,
java.lang.String path) |
DefaultHttpClient |
getProxyHttpClient(io.micronaut.core.annotation.AnnotationMetadata metadata) |
DefaultHttpClient |
getSseClient(io.micronaut.core.annotation.AnnotationMetadata metadata) |
DefaultHttpClient |
getStreamingHttpClient(io.micronaut.core.annotation.AnnotationMetadata metadata) |
DefaultHttpClient |
getWebSocketClient(io.micronaut.core.annotation.AnnotationMetadata metadata) |
protected DefaultHttpClient |
httpClient(io.micronaut.inject.InjectionPoint<?> injectionPoint,
io.micronaut.http.client.LoadBalancer loadBalancer,
io.micronaut.http.client.HttpClientConfiguration configuration,
io.micronaut.context.BeanContext beanContext)
Creates a new
HttpClient for the given injection point. |
boolean |
isClientChannel() |
io.micronaut.http.client.HttpClient |
resolveClient(io.micronaut.inject.InjectionPoint<?> injectionPoint,
io.micronaut.http.client.LoadBalancer loadBalancer,
io.micronaut.http.client.HttpClientConfiguration configuration,
io.micronaut.context.BeanContext beanContext) |
io.micronaut.http.client.ProxyHttpClient |
resolveProxyHttpClient(io.micronaut.inject.InjectionPoint<?> injectionPoint,
io.micronaut.http.client.LoadBalancer loadBalancer,
io.micronaut.http.client.HttpClientConfiguration configuration,
io.micronaut.context.BeanContext beanContext) |
io.micronaut.http.client.sse.SseClient |
resolveSseClient(io.micronaut.inject.InjectionPoint<?> injectionPoint,
io.micronaut.http.client.LoadBalancer loadBalancer,
io.micronaut.http.client.HttpClientConfiguration configuration,
io.micronaut.context.BeanContext beanContext) |
io.micronaut.http.client.StreamingHttpClient |
resolveStreamingHttpClient(io.micronaut.inject.InjectionPoint<?> injectionPoint,
io.micronaut.http.client.LoadBalancer loadBalancer,
io.micronaut.http.client.HttpClientConfiguration configuration,
io.micronaut.context.BeanContext beanContext) |
io.micronaut.websocket.WebSocketClient |
resolveWebSocketClient(io.micronaut.inject.InjectionPoint<?> injectionPoint,
io.micronaut.http.client.LoadBalancer loadBalancer,
io.micronaut.http.client.HttpClientConfiguration configuration,
io.micronaut.context.BeanContext beanContext) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetDefaultStreamingHttpClientgetDefaultWebSocketClientpublic DefaultNettyHttpClientRegistry(io.micronaut.http.client.HttpClientConfiguration defaultHttpClientConfiguration,
io.micronaut.http.filter.HttpClientFilterResolver httpClientFilterResolver,
io.micronaut.http.client.LoadBalancerResolver loadBalancerResolver,
NettyClientSslBuilder nettyClientSslBuilder,
java.util.concurrent.ThreadFactory threadFactory,
io.micronaut.http.codec.MediaTypeCodecRegistry codecRegistry,
io.micronaut.http.netty.channel.EventLoopGroupRegistry eventLoopGroupRegistry,
io.micronaut.http.netty.channel.EventLoopGroupFactory eventLoopGroupFactory,
io.micronaut.context.BeanContext beanContext,
java.util.List<io.micronaut.scheduling.instrument.InvocationInstrumenterFactory> invocationInstrumenterFactories)
defaultHttpClientConfiguration - The default HTTP client configurationhttpClientFilterResolver - The HTTP client filter resolverloadBalancerResolver - The load balancer resolvernettyClientSslBuilder - The client SSL builderthreadFactory - The thread factorycodecRegistry - The codec registryeventLoopGroupRegistry - The event loop group registryeventLoopGroupFactory - The event loop group factorybeanContext - The bean contextinvocationInstrumenterFactories - The invocation instrumenter factories@NonNull
public io.micronaut.http.client.HttpClient getClient(io.micronaut.http.HttpVersion httpVersion,
@NonNull
java.lang.String clientId,
@Nullable
java.lang.String path)
getClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>@NonNull public DefaultHttpClient getClient(@NonNull io.micronaut.core.annotation.AnnotationMetadata metadata)
getClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>@NonNull public DefaultHttpClient getSseClient(@NonNull io.micronaut.core.annotation.AnnotationMetadata metadata)
getSseClient in interface io.micronaut.http.client.sse.SseClientRegistry<io.micronaut.http.client.sse.SseClient>@NonNull public DefaultHttpClient getStreamingHttpClient(@NonNull io.micronaut.core.annotation.AnnotationMetadata metadata)
getStreamingHttpClient in interface io.micronaut.http.client.StreamingHttpClientRegistry<io.micronaut.http.client.StreamingHttpClient>@NonNull public DefaultHttpClient getProxyHttpClient(@NonNull io.micronaut.core.annotation.AnnotationMetadata metadata)
getProxyHttpClient in interface io.micronaut.http.client.ProxyHttpClientRegistry<io.micronaut.http.client.ProxyHttpClient>@NonNull public DefaultHttpClient getWebSocketClient(@NonNull io.micronaut.core.annotation.AnnotationMetadata metadata)
getWebSocketClient in interface io.micronaut.websocket.WebSocketClientRegistry<io.micronaut.websocket.WebSocketClient>@PreDestroy public void close()
close in interface java.lang.AutoCloseablepublic void disposeClient(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
disposeClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>disposeClient in interface io.micronaut.http.client.ProxyHttpClientRegistry<io.micronaut.http.client.ProxyHttpClient>disposeClient in interface io.micronaut.http.client.sse.SseClientRegistry<io.micronaut.http.client.sse.SseClient>disposeClient in interface io.micronaut.http.client.StreamingHttpClientRegistry<io.micronaut.http.client.StreamingHttpClient>disposeClient in interface io.micronaut.websocket.WebSocketClientRegistry<io.micronaut.websocket.WebSocketClient>@Bean @Primary protected DefaultHttpClient httpClient(@Nullable io.micronaut.inject.InjectionPoint<?> injectionPoint, @Parameter @Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @Parameter @Nullable io.micronaut.http.client.HttpClientConfiguration configuration, io.micronaut.context.BeanContext beanContext)
HttpClient for the given injection point.injectionPoint - The injection pointloadBalancer - The load balancer to use (Optional)configuration - The configuration (Optional)beanContext - The bean context to use@NonNull
public io.micronaut.http.client.HttpClient resolveClient(@Nullable
io.micronaut.inject.InjectionPoint<?> injectionPoint,
@Nullable
io.micronaut.http.client.LoadBalancer loadBalancer,
@Nullable
io.micronaut.http.client.HttpClientConfiguration configuration,
@NonNull
io.micronaut.context.BeanContext beanContext)
resolveClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>@NonNull
public io.micronaut.http.client.ProxyHttpClient resolveProxyHttpClient(@Nullable
io.micronaut.inject.InjectionPoint<?> injectionPoint,
@Nullable
io.micronaut.http.client.LoadBalancer loadBalancer,
@Nullable
io.micronaut.http.client.HttpClientConfiguration configuration,
@NonNull
io.micronaut.context.BeanContext beanContext)
resolveProxyHttpClient in interface io.micronaut.http.client.ProxyHttpClientRegistry<io.micronaut.http.client.ProxyHttpClient>@NonNull
public io.micronaut.http.client.sse.SseClient resolveSseClient(@Nullable
io.micronaut.inject.InjectionPoint<?> injectionPoint,
@Nullable
io.micronaut.http.client.LoadBalancer loadBalancer,
@Nullable
io.micronaut.http.client.HttpClientConfiguration configuration,
@NonNull
io.micronaut.context.BeanContext beanContext)
resolveSseClient in interface io.micronaut.http.client.sse.SseClientRegistry<io.micronaut.http.client.sse.SseClient>@NonNull
public io.micronaut.http.client.StreamingHttpClient resolveStreamingHttpClient(@Nullable
io.micronaut.inject.InjectionPoint<?> injectionPoint,
@Nullable
io.micronaut.http.client.LoadBalancer loadBalancer,
@Nullable
io.micronaut.http.client.HttpClientConfiguration configuration,
@NonNull
io.micronaut.context.BeanContext beanContext)
resolveStreamingHttpClient in interface io.micronaut.http.client.StreamingHttpClientRegistry<io.micronaut.http.client.StreamingHttpClient>@NonNull
public io.micronaut.websocket.WebSocketClient resolveWebSocketClient(@Nullable
io.micronaut.inject.InjectionPoint<?> injectionPoint,
@Nullable
io.micronaut.http.client.LoadBalancer loadBalancer,
@Nullable
io.micronaut.http.client.HttpClientConfiguration configuration,
@NonNull
io.micronaut.context.BeanContext beanContext)
resolveWebSocketClient in interface io.micronaut.websocket.WebSocketClientRegistry<io.micronaut.websocket.WebSocketClient>public boolean isClientChannel()
isClientChannel in interface io.micronaut.http.netty.channel.ChannelPipelineCustomizerpublic void doOnConnect(@NonNull
io.micronaut.http.netty.channel.ChannelPipelineListener listener)
doOnConnect in interface io.micronaut.http.netty.channel.ChannelPipelineCustomizer