@Factory @Internal public class DefaultNettyHttpClientRegistry extends java.lang.Object implements java.lang.AutoCloseable, HttpClientRegistry<HttpClient>, SseClientRegistry<SseClient>, StreamingHttpClientRegistry<StreamingHttpClient>, WebSocketClientRegistry<WebSocketClient>, ProxyHttpClientRegistry<ProxyHttpClient>
HttpClient interface based on Netty.| Constructor and Description |
|---|
DefaultNettyHttpClientRegistry(HttpClientConfiguration defaultHttpClientConfiguration,
HttpClientFilterResolver httpClientFilterResolver,
LoadBalancerResolver loadBalancerResolver,
NettyClientSslBuilder nettyClientSslBuilder,
java.util.concurrent.ThreadFactory threadFactory,
MediaTypeCodecRegistry codecRegistry,
EventLoopGroupRegistry eventLoopGroupRegistry,
EventLoopGroupFactory eventLoopGroupFactory,
BeanContext beanContext,
java.util.List<InvocationInstrumenterFactory> invocationInstrumenterFactories)
Default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
void |
disposeClient(AnnotationMetadata annotationMetadata)
Dispose of the client defined by the given metadata.
|
DefaultHttpClient |
getClient(AnnotationMetadata metadata)
Return the client for the given annotation metadata.
|
HttpClient |
getClient(HttpVersion httpVersion,
java.lang.String clientId,
java.lang.String path)
Return the client for the client ID and path.
|
DefaultHttpClient |
getProxyHttpClient(AnnotationMetadata metadata)
Return the client for the given annotation metadata.
|
DefaultHttpClient |
getSseClient(AnnotationMetadata metadata)
Return the client for the given annotation metadata.
|
DefaultHttpClient |
getStreamingHttpClient(AnnotationMetadata metadata)
Return the client for the given annotation metadata.
|
DefaultHttpClient |
getWebSocketClient(AnnotationMetadata metadata)
Return the client for the given annotation metadata.
|
protected DefaultHttpClient |
httpClient(InjectionPoint<?> injectionPoint,
LoadBalancer loadBalancer,
HttpClientConfiguration configuration,
BeanContext beanContext)
Creates a new
HttpClient for the given injection point. |
HttpClient |
resolveClient(InjectionPoint<?> injectionPoint,
LoadBalancer loadBalancer,
HttpClientConfiguration configuration,
BeanContext beanContext)
Resolves a
HttpClient for the given injection point. |
ProxyHttpClient |
resolveProxyHttpClient(InjectionPoint<?> injectionPoint,
LoadBalancer loadBalancer,
HttpClientConfiguration configuration,
BeanContext beanContext)
Resolves a
ProxyHttpClient for the given injection point. |
SseClient |
resolveSseClient(InjectionPoint<?> injectionPoint,
LoadBalancer loadBalancer,
HttpClientConfiguration configuration,
BeanContext beanContext)
Resolves a
SseClient for the given injection point. |
StreamingHttpClient |
resolveStreamingHttpClient(InjectionPoint<?> injectionPoint,
LoadBalancer loadBalancer,
HttpClientConfiguration configuration,
BeanContext beanContext)
Resolves a
StreamingHttpClient for the given injection point. |
WebSocketClient |
resolveWebSocketClient(InjectionPoint<?> injectionPoint,
LoadBalancer loadBalancer,
HttpClientConfiguration configuration,
BeanContext beanContext)
Resolves a
WebSocketClient for the given injection point. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetDefaultClientgetDefaultSseClientgetDefaultStreamingHttpClientgetDefaultWebSocketClientgetDefaultProxyHttpClientpublic DefaultNettyHttpClientRegistry(HttpClientConfiguration defaultHttpClientConfiguration, HttpClientFilterResolver httpClientFilterResolver, LoadBalancerResolver loadBalancerResolver, NettyClientSslBuilder nettyClientSslBuilder, java.util.concurrent.ThreadFactory threadFactory, MediaTypeCodecRegistry codecRegistry, EventLoopGroupRegistry eventLoopGroupRegistry, EventLoopGroupFactory eventLoopGroupFactory, BeanContext beanContext, java.util.List<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 HttpClient getClient(HttpVersion httpVersion, @NonNull java.lang.String clientId, @Nullable java.lang.String path)
HttpClientRegistrygetClient in interface HttpClientRegistry<HttpClient>httpVersion - The HTTP versionclientId - The client IDpath - The path (Optional)@NonNull public DefaultHttpClient getClient(@NonNull AnnotationMetadata metadata)
HttpClientRegistrygetClient in interface HttpClientRegistry<HttpClient>metadata - The annotation metadata.@NonNull public DefaultHttpClient getSseClient(@NonNull AnnotationMetadata metadata)
SseClientRegistrygetSseClient in interface SseClientRegistry<SseClient>metadata - The annotation metadata.@NonNull public DefaultHttpClient getStreamingHttpClient(@NonNull AnnotationMetadata metadata)
StreamingHttpClientRegistrygetStreamingHttpClient in interface StreamingHttpClientRegistry<StreamingHttpClient>metadata - The annotation metadata.@NonNull public DefaultHttpClient getProxyHttpClient(@NonNull AnnotationMetadata metadata)
ProxyHttpClientRegistrygetProxyHttpClient in interface ProxyHttpClientRegistry<ProxyHttpClient>metadata - The annotation metadata.@NonNull public DefaultHttpClient getWebSocketClient(@NonNull AnnotationMetadata metadata)
WebSocketClientRegistrygetWebSocketClient in interface WebSocketClientRegistry<WebSocketClient>metadata - The annotation metadata.@PreDestroy public void close()
close in interface java.lang.AutoCloseablepublic void disposeClient(AnnotationMetadata annotationMetadata)
HttpClientRegistrydisposeClient in interface HttpClientRegistry<HttpClient>disposeClient in interface ProxyHttpClientRegistry<ProxyHttpClient>disposeClient in interface SseClientRegistry<SseClient>disposeClient in interface StreamingHttpClientRegistry<StreamingHttpClient>disposeClient in interface WebSocketClientRegistry<WebSocketClient>annotationMetadata - The annotation metadata@Bean @Primary protected DefaultHttpClient httpClient(@Nullable InjectionPoint<?> injectionPoint, @Parameter @Nullable LoadBalancer loadBalancer, @Parameter @Nullable HttpClientConfiguration configuration, 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 HttpClient resolveClient(@Nullable InjectionPoint<?> injectionPoint, @Nullable LoadBalancer loadBalancer, @Nullable HttpClientConfiguration configuration, @NonNull BeanContext beanContext)
HttpClientRegistryHttpClient for the given injection point.resolveClient in interface HttpClientRegistry<HttpClient>injectionPoint - The injection pointloadBalancer - The load balancer to use (Optional)configuration - The configuration (Optional)beanContext - The bean context to use@NonNull public ProxyHttpClient resolveProxyHttpClient(@Nullable InjectionPoint<?> injectionPoint, @Nullable LoadBalancer loadBalancer, @Nullable HttpClientConfiguration configuration, @NonNull BeanContext beanContext)
ProxyHttpClientRegistryProxyHttpClient for the given injection point.resolveProxyHttpClient in interface ProxyHttpClientRegistry<ProxyHttpClient>injectionPoint - The injection pointloadBalancer - The load balancer to use (Optional)configuration - The configuration (Optional)beanContext - The bean context to use@NonNull public SseClient resolveSseClient(@Nullable InjectionPoint<?> injectionPoint, @Nullable LoadBalancer loadBalancer, @Nullable HttpClientConfiguration configuration, @NonNull BeanContext beanContext)
SseClientRegistrySseClient for the given injection point.resolveSseClient in interface SseClientRegistry<SseClient>injectionPoint - The injection pointloadBalancer - The load balancer to use (Optional)configuration - The configuration (Optional)beanContext - The bean context to use@NonNull public StreamingHttpClient resolveStreamingHttpClient(@Nullable InjectionPoint<?> injectionPoint, @Nullable LoadBalancer loadBalancer, @Nullable HttpClientConfiguration configuration, @NonNull BeanContext beanContext)
StreamingHttpClientRegistryStreamingHttpClient for the given injection point.resolveStreamingHttpClient in interface StreamingHttpClientRegistry<StreamingHttpClient>injectionPoint - The injection pointloadBalancer - The load balancer to use (Optional)configuration - The configuration (Optional)beanContext - The bean context to use@NonNull public WebSocketClient resolveWebSocketClient(@Nullable InjectionPoint<?> injectionPoint, @Nullable LoadBalancer loadBalancer, @Nullable HttpClientConfiguration configuration, @NonNull BeanContext beanContext)
WebSocketClientRegistryWebSocketClient for the given injection point.resolveWebSocketClient in interface WebSocketClientRegistry<WebSocketClient>injectionPoint - The injection pointloadBalancer - The load balancer to use (Optional)configuration - The configuration (Optional)beanContext - The bean context to use