Package io.micronaut.http.client.jdk
Class JdkBlockingHttpClient
java.lang.Object
io.micronaut.http.client.jdk.JdkBlockingHttpClient
- All Implemented Interfaces:
io.micronaut.http.client.BlockingHttpClient,Closeable,AutoCloseable
@Internal
public class JdkBlockingHttpClient
extends Object
implements io.micronaut.http.client.BlockingHttpClient
HttpClient implementation for java.net.http.* HTTP Client.- Since:
- 4.0.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final HttpClientprotected final List<io.micronaut.http.filter.HttpFilterResolver.FilterEntry>protected final Stringprotected final io.micronaut.http.client.HttpClientConfigurationprotected final Stringprotected final io.micronaut.core.convert.ConversionServiceprotected final CookieDecoderprotected final CookieManagerprotected final io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext>static final Stringstatic final Stringprotected final io.micronaut.http.client.HttpVersionSelectionprotected final io.micronaut.http.client.LoadBalancerprotected final org.slf4j.Loggerprotected io.micronaut.http.codec.MediaTypeCodecRegistryprotected final io.micronaut.http.bind.RequestBinderRegistryprotected final JdkClientSslBuilderstatic final String -
Constructor Summary
ConstructorsConstructorDescriptionJdkBlockingHttpClient(io.micronaut.http.client.LoadBalancer loadBalancer, io.micronaut.http.client.HttpVersionSelection httpVersion, io.micronaut.http.client.HttpClientConfiguration configuration, String contextPath, @Nullable io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> filterResolver, @Nullable List<io.micronaut.http.filter.HttpFilterResolver.FilterEntry> clientFilterEntries, io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry, io.micronaut.http.bind.RequestBinderRegistry requestBinderRegistry, String clientId, io.micronaut.core.convert.ConversionService conversionService, JdkClientSslBuilder sslBuilder, CookieDecoder cookieDecoder) -
Method Summary
Modifier and TypeMethodDescriptionprotected <I,R extends io.micronaut.http.HttpResponse<?>>
org.reactivestreams.Publisher<R>applyFilterToResponsePublisher(io.micronaut.http.HttpRequest<I> request, URI requestURI, org.reactivestreams.Publisher<R> responsePublisher) voidclose()<I,O, E> io.micronaut.http.HttpResponse<O> exchange(io.micronaut.http.HttpRequest<I> request, io.micronaut.core.type.Argument<O> bodyType, io.micronaut.core.type.Argument<E> errorType) protected <I,O> reactor.core.publisher.Flux<io.micronaut.http.HttpResponse<O>> exchangeImpl(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> bodyType) io.micronaut.http.codec.MediaTypeCodecRegistryprotected <I> reactor.core.publisher.Mono<HttpRequest>mapToHttpRequest(io.micronaut.http.HttpRequest<I> request, io.micronaut.core.type.Argument<?> bodyType) Convert the Micronaut request to a JDK request.protected reactor.core.publisher.Mono<URI>resolveRequestUri(io.micronaut.http.HttpRequest<?> request) protected <O> @NonNull io.micronaut.http.HttpResponse<O>response(HttpResponse<byte[]> netResponse, @NonNull io.micronaut.core.type.Argument<O> bodyType) Convert the JDK response to a Micronaut response.protected <O> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>>responsePublisher(io.micronaut.http.HttpRequest<?> request, io.micronaut.core.type.Argument<O> bodyType) voidsetMediaTypeCodecRegistry(io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.http.client.BlockingHttpClient
exchange, exchange, exchange, exchange, exchange, exchange, retrieve, retrieve, retrieve, retrieve, retrieve, retrieve, retrieve
-
Field Details
-
H2C_ERROR_MESSAGE
- See Also:
-
H3_ERROR_MESSAGE
- See Also:
-
WEIRD_ALPN_ERROR_MESSAGE
- See Also:
-
loadBalancer
protected final io.micronaut.http.client.LoadBalancer loadBalancer -
httpVersion
protected final io.micronaut.http.client.HttpVersionSelection httpVersion -
configuration
protected final io.micronaut.http.client.HttpClientConfiguration configuration -
contextPath
-
client
-
cookieManager
-
requestBinderRegistry
protected final io.micronaut.http.bind.RequestBinderRegistry requestBinderRegistry -
clientId
-
conversionService
protected final io.micronaut.core.convert.ConversionService conversionService -
sslBuilder
-
log
protected final org.slf4j.Logger log -
filterResolver
protected final io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> filterResolver -
clientFilterEntries
-
cookieDecoder
-
mediaTypeCodecRegistry
protected io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry
-
-
Constructor Details
-
JdkBlockingHttpClient
public JdkBlockingHttpClient(io.micronaut.http.client.LoadBalancer loadBalancer, io.micronaut.http.client.HttpVersionSelection httpVersion, io.micronaut.http.client.HttpClientConfiguration configuration, String contextPath, @Nullable @Nullable io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> filterResolver, @Nullable @Nullable List<io.micronaut.http.filter.HttpFilterResolver.FilterEntry> clientFilterEntries, io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry, io.micronaut.http.bind.RequestBinderRegistry requestBinderRegistry, String clientId, io.micronaut.core.convert.ConversionService conversionService, JdkClientSslBuilder sslBuilder, CookieDecoder cookieDecoder)
-
-
Method Details
-
exchange
public <I,O, io.micronaut.http.HttpResponse<O> exchangeE> (io.micronaut.http.HttpRequest<I> request, io.micronaut.core.type.Argument<O> bodyType, io.micronaut.core.type.Argument<E> errorType) - Specified by:
exchangein interfaceio.micronaut.http.client.BlockingHttpClient
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-
getMediaTypeCodecRegistry
public io.micronaut.http.codec.MediaTypeCodecRegistry getMediaTypeCodecRegistry()- Returns:
- The
MediaTypeCodecRegistry
-
setMediaTypeCodecRegistry
public void setMediaTypeCodecRegistry(io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry) - Parameters:
mediaTypeCodecRegistry- TheMediaTypeCodecRegistry
-
mapToHttpRequest
protected <I> reactor.core.publisher.Mono<HttpRequest> mapToHttpRequest(io.micronaut.http.HttpRequest<I> request, io.micronaut.core.type.Argument<?> bodyType) Convert the Micronaut request to a JDK request.- Type Parameters:
I- The body type- Parameters:
request- The Micronaut request objectbodyType- The body type- Returns:
- A JDK request object
-
resolveRequestUri
protected reactor.core.publisher.Mono<URI> resolveRequestUri(io.micronaut.http.HttpRequest<?> request) -
response
@NonNull protected <O> @NonNull io.micronaut.http.HttpResponse<O> response(@NonNull HttpResponse<byte[]> netResponse, @NonNull @NonNull io.micronaut.core.type.Argument<O> bodyType) Convert the JDK response to a Micronaut response.- Type Parameters:
O- The body type- Parameters:
netResponse- The JDK responsebodyType- The body type- Returns:
- A Micronaut response
-
exchangeImpl
protected <I,O> reactor.core.publisher.Flux<io.micronaut.http.HttpResponse<O>> exchangeImpl(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> bodyType) -
applyFilterToResponsePublisher
protected <I,R extends io.micronaut.http.HttpResponse<?>> org.reactivestreams.Publisher<R> applyFilterToResponsePublisher(io.micronaut.http.HttpRequest<I> request, URI requestURI, org.reactivestreams.Publisher<R> responsePublisher) -
responsePublisher
protected <O> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> responsePublisher(io.micronaut.http.HttpRequest<?> request, io.micronaut.core.type.Argument<O> bodyType)
-