Class DefaultJdkHttpClientRegistry

java.lang.Object
io.micronaut.http.client.jdk.DefaultJdkHttpClientRegistry
All Implemented Interfaces:
io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>, io.micronaut.http.client.RawHttpClientRegistry, AutoCloseable

@Factory @Order(2) @Internal public final class DefaultJdkHttpClientRegistry extends Object implements AutoCloseable, io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>, io.micronaut.http.client.RawHttpClientRegistry
Factory to create java.net.http.* HTTP Clients.
Since:
4.0.0
  • Constructor Summary

    Constructors
    Constructor
    Description
    DefaultJdkHttpClientRegistry(io.micronaut.context.BeanContext beanContext, io.micronaut.http.client.LoadBalancerResolver loadBalancerResolver, io.micronaut.http.client.HttpClientConfiguration defaultHttpClientConfiguration, io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> httpClientFilterResolver, io.micronaut.json.JsonMapper jsonMapper, @Nullable io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry, io.micronaut.http.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry, io.micronaut.context.BeanProvider<io.micronaut.http.bind.RequestBinderRegistry> requestBinderRegistryProvider, io.micronaut.context.BeanProvider<JdkClientSslBuilder> sslBuilderBeanProvider, io.micronaut.context.BeanProvider<CookieDecoder> cookieDecoderBeanProvider)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
    disposeClient(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
     
    getClient(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
     
    getClient(io.micronaut.http.client.HttpVersionSelection httpVersion, String clientId, String path)
     
    @NonNull io.micronaut.http.client.RawHttpClient
    getRawClient(@NonNull io.micronaut.http.client.HttpVersionSelection httpVersion, @NonNull String clientId, @Nullable String path)
     
    httpClient(@Nullable io.micronaut.inject.InjectionPoint<?> injectionPoint, @Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @Nullable io.micronaut.http.client.HttpClientConfiguration configuration, io.micronaut.context.BeanContext beanContext)
    Creates a java.net.http.* HTTP Client.
    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)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.micronaut.http.client.HttpClientRegistry

    getClient, getDefaultClient
  • Constructor Details

    • DefaultJdkHttpClientRegistry

      public DefaultJdkHttpClientRegistry(io.micronaut.context.BeanContext beanContext, io.micronaut.http.client.LoadBalancerResolver loadBalancerResolver, io.micronaut.http.client.HttpClientConfiguration defaultHttpClientConfiguration, io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> httpClientFilterResolver, io.micronaut.json.JsonMapper jsonMapper, @Nullable @Nullable io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry, io.micronaut.http.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry, io.micronaut.context.BeanProvider<io.micronaut.http.bind.RequestBinderRegistry> requestBinderRegistryProvider, io.micronaut.context.BeanProvider<JdkClientSslBuilder> sslBuilderBeanProvider, io.micronaut.context.BeanProvider<CookieDecoder> cookieDecoderBeanProvider)
  • Method Details

    • httpClient

      @Bean @Primary @Order(2) protected DefaultJdkHttpClient httpClient(@Nullable @Nullable io.micronaut.inject.InjectionPoint<?> injectionPoint, @Parameter @Nullable @Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @Parameter @Nullable @Nullable io.micronaut.http.client.HttpClientConfiguration configuration, io.micronaut.context.BeanContext beanContext)
      Creates a java.net.http.* HTTP Client.
      Parameters:
      injectionPoint -
      loadBalancer -
      configuration -
      beanContext -
      Returns:
      A java.net.http.* HTTP Client
    • getClient

      public DefaultJdkHttpClient getClient(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
      Specified by:
      getClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>
    • getClient

      public DefaultJdkHttpClient getClient(io.micronaut.http.client.HttpVersionSelection httpVersion, String clientId, String path)
      Specified by:
      getClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>
    • resolveClient

      public 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)
      Specified by:
      resolveClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>
    • disposeClient

      public void disposeClient(io.micronaut.core.annotation.AnnotationMetadata annotationMetadata)
      Specified by:
      disposeClient in interface io.micronaut.http.client.HttpClientRegistry<io.micronaut.http.client.HttpClient>
    • close

      public void close() throws Exception
      Specified by:
      close in interface AutoCloseable
      Throws:
      Exception
    • getRawClient

      @NonNull public @NonNull io.micronaut.http.client.RawHttpClient getRawClient(@NonNull @NonNull io.micronaut.http.client.HttpVersionSelection httpVersion, @NonNull @NonNull String clientId, @Nullable @Nullable String path)
      Specified by:
      getRawClient in interface io.micronaut.http.client.RawHttpClientRegistry