Package io.micronaut.http.client.jdk
Class JdkBlockingHttpClient
java.lang.Object
io.micronaut.http.client.jdk.JdkBlockingHttpClient
- All Implemented Interfaces:
io.micronaut.context.LifeCycle<io.micronaut.http.client.BlockingHttpClient>,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 io.micronaut.http.body.MessageBodyHandlerRegistryprotected 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.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry, 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, @Nullable io.micronaut.core.type.Argument<O> bodyType, @Nullable 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, @Nullable io.micronaut.core.type.Argument<O> bodyType) io.micronaut.http.codec.MediaTypeCodecRegistryio.micronaut.http.body.MessageBodyHandlerRegistrybooleanprotected <I> reactor.core.publisher.Mono<HttpRequest>mapToHttpRequest(io.micronaut.http.HttpRequest<I> request, @Nullable 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, @Nullable io.micronaut.core.type.Argument<O> bodyType) voidsetMediaTypeCodecRegistry(io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry) voidsetMessageBodyHandlerRegistry(io.micronaut.http.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry) io.micronaut.http.client.BlockingHttpClientstart()io.micronaut.http.client.BlockingHttpClientstop()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, refresh, 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 -
messageBodyHandlerRegistry
protected io.micronaut.http.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry
-
-
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.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry, 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> (@NonNull io.micronaut.http.HttpRequest<I> request, @Nullable @Nullable io.micronaut.core.type.Argument<O> bodyType, @Nullable @Nullable io.micronaut.core.type.Argument<E> errorType) - Specified by:
exchangein interfaceio.micronaut.http.client.BlockingHttpClient
-
isRunning
public boolean isRunning()- Specified by:
isRunningin interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.BlockingHttpClient>
-
start
public io.micronaut.http.client.BlockingHttpClient start()- Specified by:
startin interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.BlockingHttpClient>
-
stop
public io.micronaut.http.client.BlockingHttpClient stop()- Specified by:
stopin interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.BlockingHttpClient>
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.BlockingHttpClient>
-
getMediaTypeCodecRegistry
public io.micronaut.http.codec.MediaTypeCodecRegistry getMediaTypeCodecRegistry()- Returns:
- The
MediaTypeCodecRegistry
-
setMediaTypeCodecRegistry
public void setMediaTypeCodecRegistry(io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry) - Parameters:
mediaTypeCodecRegistry- TheMediaTypeCodecRegistry
-
getMessageBodyHandlerRegistry
public io.micronaut.http.body.MessageBodyHandlerRegistry getMessageBodyHandlerRegistry()- Returns:
- The
MessageBodyHandlerRegistry
-
setMessageBodyHandlerRegistry
public void setMessageBodyHandlerRegistry(io.micronaut.http.body.MessageBodyHandlerRegistry messageBodyHandlerRegistry) - Parameters:
messageBodyHandlerRegistry- TheMessageBodyHandlerRegistry
-
mapToHttpRequest
protected <I> reactor.core.publisher.Mono<HttpRequest> mapToHttpRequest(@NonNull io.micronaut.http.HttpRequest<I> request, @Nullable @Nullable 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, @Nullable @Nullable 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(@NonNull io.micronaut.http.HttpRequest<?> request, @Nullable @Nullable io.micronaut.core.type.Argument<O> bodyType)
-