Package io.micronaut.http.client.netty
Class DefaultHttpClient
java.lang.Object
io.micronaut.http.client.netty.DefaultHttpClient
- All Implemented Interfaces:
io.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>,io.micronaut.http.client.HttpClient,io.micronaut.http.client.ProxyHttpClient,io.micronaut.http.client.RawHttpClient,io.micronaut.http.client.sse.SseClient,io.micronaut.http.client.StreamingHttpClient,io.micronaut.websocket.WebSocketClient,Closeable,AutoCloseable
@Internal
public class DefaultHttpClient
extends Object
implements io.micronaut.websocket.WebSocketClient, io.micronaut.http.client.HttpClient, io.micronaut.http.client.StreamingHttpClient, io.micronaut.http.client.sse.SseClient, io.micronaut.http.client.ProxyHttpClient, io.micronaut.http.client.RawHttpClient, Closeable, AutoCloseable
Default implementation of the
HttpClient interface based on Netty.- Since:
- 1.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classKey used for connection pooling and determining host/port. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected io.micronaut.core.io.buffer.ByteBufferFactory<io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf> protected io.micronaut.http.codec.MediaTypeCodecRegistryFields inherited from interface io.micronaut.http.client.HttpClient
DEFAULT_ERROR_TYPEFields inherited from interface io.micronaut.websocket.WebSocketClient
SCHEME_WS, SCHEME_WSS -
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.DefaultHttpClient(@Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @NonNull io.micronaut.http.client.HttpClientConfiguration configuration, @Nullable String contextPath, @Nullable ThreadFactory threadFactory, ClientSslBuilder nettyClientSslBuilder, @NonNull io.micronaut.http.codec.MediaTypeCodecRegistry codecRegistry, @NonNull io.micronaut.http.body.MessageBodyHandlerRegistry handlerRegistry, @Nullable io.micronaut.core.annotation.AnnotationMetadataResolver annotationMetadataResolver, io.micronaut.core.convert.ConversionService conversionService, io.micronaut.http.filter.HttpClientFilter... filters) Deprecated.Please go through thebuilder()instead.DefaultHttpClient(@Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @Nullable io.micronaut.http.client.HttpVersionSelection explicitHttpVersion, @NonNull io.micronaut.http.client.HttpClientConfiguration configuration, @Nullable String contextPath, @NonNull io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> filterResolver, @NonNull List<io.micronaut.http.filter.HttpFilterResolver.FilterEntry> clientFilterEntries, @Nullable ThreadFactory threadFactory, @NonNull ClientSslBuilder nettyClientSslBuilder, @NonNull io.micronaut.http.codec.MediaTypeCodecRegistry codecRegistry, @NonNull io.micronaut.http.body.MessageBodyHandlerRegistry handlerRegistry, @NonNull io.micronaut.websocket.context.WebSocketBeanRegistry webSocketBeanRegistry, @NonNull io.micronaut.http.bind.RequestBinderRegistry requestBinderRegistry, @Nullable io.netty.channel.EventLoopGroup eventLoopGroup, @NonNull io.netty.channel.ChannelFactory<? extends io.netty.channel.socket.SocketChannel> socketChannelFactory, @NonNull io.netty.channel.ChannelFactory<? extends io.netty.channel.socket.DatagramChannel> udpChannelFactory, NettyClientCustomizer clientCustomizer, @Nullable String informationalServiceId, io.micronaut.core.convert.ConversionService conversionService, @Nullable io.netty.resolver.AddressResolverGroup<?> resolverGroup) Deprecated.Please go through thebuilder()instead.DefaultHttpClient(@Nullable io.micronaut.http.client.LoadBalancer loadBalancer, io.micronaut.http.client.HttpClientConfiguration configuration) Deprecated.Please go through thebuilder()instead.DefaultHttpClient(@Nullable URI uri) Deprecated.Please go through thebuilder()instead.DefaultHttpClient(@Nullable URI uri, @NonNull io.micronaut.http.client.HttpClientConfiguration configuration) Deprecated.Please go through thebuilder()instead.DefaultHttpClient(@Nullable URI uri, @NonNull io.micronaut.http.client.HttpClientConfiguration configuration, @NonNull ClientSslBuilder clientSslBuilder) Deprecated.Please go through thebuilder()instead. -
Method Summary
Modifier and TypeMethodDescriptionstatic @NonNull DefaultHttpClientBuilderbuilder()Create a new builder for aDefaultHttpClient.voidclose()<T extends AutoCloseable>
org.reactivestreams.Publisher<T><T extends AutoCloseable>
org.reactivestreams.Publisher<T>Access to the connection manager, for micronaut-oracle-cloud.<I> org.reactivestreams.Publisher<io.micronaut.core.io.buffer.ByteBuffer<?>>dataStream(io.micronaut.http.HttpRequest<I> request) <I> org.reactivestreams.Publisher<io.micronaut.core.io.buffer.ByteBuffer<?>>dataStream(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<?> errorType) <I> org.reactivestreams.Publisher<io.micronaut.http.sse.Event<io.micronaut.core.io.buffer.ByteBuffer<?>>>eventStream(io.micronaut.http.HttpRequest<I> request) <I,B> org.reactivestreams.Publisher<io.micronaut.http.sse.Event<B>> eventStream(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<B> eventType) <I,B> org.reactivestreams.Publisher<io.micronaut.http.sse.Event<B>> eventStream(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<B> eventType, @NonNull io.micronaut.core.type.Argument<?> errorType) org.reactivestreams.Publisher<? extends io.micronaut.http.HttpResponse<?>>exchange(io.micronaut.http.HttpRequest<?> request, @Nullable io.micronaut.http.body.CloseableByteBody requestBody, @Nullable Thread blockedThread) <I,O, E> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> exchange(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> bodyType, @NonNull io.micronaut.core.type.Argument<E> errorType) <I> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer<?>>>exchangeStream(io.micronaut.http.HttpRequest<I> request) <I> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer<?>>>exchangeStream(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<?> errorType) io.micronaut.http.client.HttpClientConfigurationfinal @NonNull io.micronaut.http.body.MessageBodyHandlerRegistryGet the handler registry for this client.protected Objectorg.slf4j.LoggergetLog()io.micronaut.http.codec.MediaTypeCodecRegistryDeprecated.Use body handlers insteadbooleanjsonStream(io.micronaut.http.HttpRequest<I> request) <I,O> org.reactivestreams.Publisher<O> jsonStream(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> type) <I,O> org.reactivestreams.Publisher<O> jsonStream(io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> type, @NonNull io.micronaut.core.type.Argument<?> errorType) <I,O> org.reactivestreams.Publisher<O> jsonStream(io.micronaut.http.HttpRequest<I> request, @NonNull Class<O> type) org.reactivestreams.Publisher<io.micronaut.http.MutableHttpResponse<?>>proxy(io.micronaut.http.HttpRequest<?> request) org.reactivestreams.Publisher<io.micronaut.http.MutableHttpResponse<?>>proxy(io.micronaut.http.HttpRequest<?> request, @NonNull io.micronaut.http.client.ProxyRequestOptions options) protected <I> io.micronaut.core.execution.ExecutionFlow<URI>resolveRedirectURI(io.micronaut.http.HttpRequest<?> parentRequest, io.micronaut.http.HttpRequest<I> request) protected <I> io.micronaut.core.execution.ExecutionFlow<URI>resolveRequestURI(io.micronaut.http.HttpRequest<I> request) protected <I> io.micronaut.core.execution.ExecutionFlow<URI>resolveRequestURI(io.micronaut.http.HttpRequest<I> request, boolean includeContextPath) <I,O, E> org.reactivestreams.Publisher<O> retrieve(io.micronaut.http.HttpRequest<I> request, io.micronaut.core.type.Argument<O> bodyType, io.micronaut.core.type.Argument<E> errorType) final voidsetHandlerRegistry(@NonNull io.micronaut.http.body.MessageBodyHandlerRegistry handlerRegistry) Deprecated, for removal: This API element is subject to removal in a future version.Use builder insteadvoidsetMediaTypeCodecRegistry(io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry) Deprecated, for removal: This API element is subject to removal in a future version.Use builder insteadio.micronaut.http.client.HttpClientstart()io.micronaut.http.client.HttpClientstop()io.micronaut.http.client.BlockingHttpClientMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.http.client.HttpClient
exchange, exchange, exchange, exchange, exchange, refresh, retrieve, retrieve, retrieve, retrieveMethods inherited from interface io.micronaut.http.client.sse.SseClient
eventStream, eventStream, eventStreamMethods inherited from interface io.micronaut.websocket.WebSocketClient
connect, connect
-
Field Details
-
mediaTypeCodecRegistry
protected io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry -
byteBufferFactory
protected io.micronaut.core.io.buffer.ByteBufferFactory<io.netty.buffer.ByteBufAllocator,io.netty.buffer.ByteBuf> byteBufferFactory
-
-
Constructor Details
-
DefaultHttpClient
@Deprecated public DefaultHttpClient(@Nullable @Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @NonNull @NonNull io.micronaut.http.client.HttpClientConfiguration configuration, @Nullable @Nullable String contextPath, @Nullable @Nullable ThreadFactory threadFactory, ClientSslBuilder nettyClientSslBuilder, @NonNull @NonNull io.micronaut.http.codec.MediaTypeCodecRegistry codecRegistry, @NonNull @NonNull io.micronaut.http.body.MessageBodyHandlerRegistry handlerRegistry, @Nullable @Nullable io.micronaut.core.annotation.AnnotationMetadataResolver annotationMetadataResolver, io.micronaut.core.convert.ConversionService conversionService, io.micronaut.http.filter.HttpClientFilter... filters) Deprecated.Please go through thebuilder()instead. If you need access to properties that are not public in the builder, make them public in core and document their usage.Construct a client for the given arguments.- Parameters:
loadBalancer- TheLoadBalancerto use for selecting serversconfiguration- TheHttpClientConfigurationobjectcontextPath- The base URI to prepend to request uristhreadFactory- The thread factory to use for client threadsnettyClientSslBuilder- The SSL buildercodecRegistry- TheMediaTypeCodecRegistryto use for encoding and decoding objectshandlerRegistry- The handler registry for encoding and decodingannotationMetadataResolver- The annotation metadata resolverconversionService- The conversion servicefilters- The filters to use
-
DefaultHttpClient
@Deprecated public DefaultHttpClient(@Nullable @Nullable io.micronaut.http.client.LoadBalancer loadBalancer, @Nullable @Nullable io.micronaut.http.client.HttpVersionSelection explicitHttpVersion, @NonNull @NonNull io.micronaut.http.client.HttpClientConfiguration configuration, @Nullable @Nullable String contextPath, @NonNull @NonNull io.micronaut.http.filter.HttpClientFilterResolver<io.micronaut.http.client.filter.ClientFilterResolutionContext> filterResolver, @NonNull @NonNull List<io.micronaut.http.filter.HttpFilterResolver.FilterEntry> clientFilterEntries, @Nullable @Nullable ThreadFactory threadFactory, @NonNull @NonNull ClientSslBuilder nettyClientSslBuilder, @NonNull @NonNull io.micronaut.http.codec.MediaTypeCodecRegistry codecRegistry, @NonNull @NonNull io.micronaut.http.body.MessageBodyHandlerRegistry handlerRegistry, @NonNull @NonNull io.micronaut.websocket.context.WebSocketBeanRegistry webSocketBeanRegistry, @NonNull @NonNull io.micronaut.http.bind.RequestBinderRegistry requestBinderRegistry, @Nullable @Nullable io.netty.channel.EventLoopGroup eventLoopGroup, @NonNull @NonNull io.netty.channel.ChannelFactory<? extends io.netty.channel.socket.SocketChannel> socketChannelFactory, @NonNull @NonNull io.netty.channel.ChannelFactory<? extends io.netty.channel.socket.DatagramChannel> udpChannelFactory, NettyClientCustomizer clientCustomizer, @Nullable @Nullable String informationalServiceId, io.micronaut.core.convert.ConversionService conversionService, @Nullable @Nullable io.netty.resolver.AddressResolverGroup<?> resolverGroup) Deprecated.Please go through thebuilder()instead. If you need access to properties that are not public in the builder, make them public in core and document their usage.Construct a client for the given arguments.- Parameters:
loadBalancer- TheLoadBalancerto use for selecting serversexplicitHttpVersion- The HTTP version to use. Can be null and defaults toHttpVersion.HTTP_1_1configuration- TheHttpClientConfigurationobjectcontextPath- The base URI to prepend to request urisfilterResolver- The http client filter resolverclientFilterEntries- The client filter entriesthreadFactory- The thread factory to use for client threadsnettyClientSslBuilder- The SSL buildercodecRegistry- TheMediaTypeCodecRegistryto use for encoding and decoding objectshandlerRegistry- The handler registry for encoding and decodingwebSocketBeanRegistry- The websocket bean registryrequestBinderRegistry- The request binder registryeventLoopGroup- The event loop group to usesocketChannelFactory- The socket channel factoryudpChannelFactory- The UDP channel factoryclientCustomizer- The pipeline customizerinformationalServiceId- Optional service ID that will be passed to exceptions created by this clientconversionService- The conversion serviceresolverGroup- Optional predefined resolver group
-
DefaultHttpClient
Deprecated.Please go through thebuilder()instead.- Parameters:
uri- The URL
-
DefaultHttpClient
Deprecated.Please go through thebuilder()instead. -
DefaultHttpClient
@Deprecated public DefaultHttpClient(@Nullable @Nullable URI uri, @NonNull @NonNull io.micronaut.http.client.HttpClientConfiguration configuration) Deprecated.Please go through thebuilder()instead.- Parameters:
uri- The URIconfiguration- TheHttpClientConfigurationobject
-
DefaultHttpClient
@Deprecated public DefaultHttpClient(@Nullable @Nullable URI uri, @NonNull @NonNull io.micronaut.http.client.HttpClientConfiguration configuration, @NonNull @NonNull ClientSslBuilder clientSslBuilder) Deprecated.Please go through thebuilder()instead.Constructor used by micronaut-oracle-cloud.- Parameters:
uri- The URIconfiguration- TheHttpClientConfigurationobjectclientSslBuilder- The SSL builder
-
DefaultHttpClient
@Deprecated public DefaultHttpClient(@Nullable @Nullable io.micronaut.http.client.LoadBalancer loadBalancer, io.micronaut.http.client.HttpClientConfiguration configuration) Deprecated.Please go through thebuilder()instead. If you need access to properties that are not public in the builder, make them public in core and document their usage.- Parameters:
loadBalancer- TheLoadBalancerto use for selecting serversconfiguration- TheHttpClientConfigurationobject
-
-
Method Details
-
builder
Create a new builder for aDefaultHttpClient.- Returns:
- The builder
- Since:
- 4.7.0
-
getConfiguration
public io.micronaut.http.client.HttpClientConfiguration getConfiguration()- Returns:
- The configuration used by this client
-
getLog
public org.slf4j.Logger getLog()- Returns:
- The client-specific logger name
-
connectionManager
Access to the connection manager, for micronaut-oracle-cloud.- Returns:
- The connection manager of this client
-
start
public io.micronaut.http.client.HttpClient start()- Specified by:
startin interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>
-
isRunning
public boolean isRunning()- Specified by:
isRunningin interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>
-
stop
public io.micronaut.http.client.HttpClient stop()- Specified by:
stopin interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>
-
getMediaTypeCodecRegistry
Deprecated.Use body handlers instead- Returns:
- The
MediaTypeCodecRegistryused by this client
-
setMediaTypeCodecRegistry
@Deprecated(forRemoval=true) public void setMediaTypeCodecRegistry(io.micronaut.http.codec.MediaTypeCodecRegistry mediaTypeCodecRegistry) Deprecated, for removal: This API element is subject to removal in a future version.Use builder insteadSets theMediaTypeCodecRegistryused by this client.- Parameters:
mediaTypeCodecRegistry- The registry to use. Should not be null
-
getHandlerRegistry
@NonNull public final @NonNull io.micronaut.http.body.MessageBodyHandlerRegistry getHandlerRegistry()Get the handler registry for this client.- Returns:
- The handler registry
-
setHandlerRegistry
@Deprecated(forRemoval=true) public final void setHandlerRegistry(@NonNull @NonNull io.micronaut.http.body.MessageBodyHandlerRegistry handlerRegistry) Deprecated, for removal: This API element is subject to removal in a future version.Use builder insteadSet the handler registry for this client.- Parameters:
handlerRegistry- The handler registry
-
toBlocking
public io.micronaut.http.client.BlockingHttpClient toBlocking()- Specified by:
toBlockingin interfaceio.micronaut.http.client.HttpClient
-
eventStream
public <I> org.reactivestreams.Publisher<io.micronaut.http.sse.Event<io.micronaut.core.io.buffer.ByteBuffer<?>>> eventStream(@NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
eventStreamin interfaceio.micronaut.http.client.sse.SseClient
-
eventStream
public <I,B> org.reactivestreams.Publisher<io.micronaut.http.sse.Event<B>> eventStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<B> eventType) - Specified by:
eventStreamin interfaceio.micronaut.http.client.sse.SseClient
-
eventStream
public <I,B> org.reactivestreams.Publisher<io.micronaut.http.sse.Event<B>> eventStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<B> eventType, @NonNull @NonNull io.micronaut.core.type.Argument<?> errorType) - Specified by:
eventStreamin interfaceio.micronaut.http.client.sse.SseClient
-
dataStream
public <I> org.reactivestreams.Publisher<io.micronaut.core.io.buffer.ByteBuffer<?>> dataStream(@NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
dataStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
dataStream
public <I> org.reactivestreams.Publisher<io.micronaut.core.io.buffer.ByteBuffer<?>> dataStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<?> errorType) - Specified by:
dataStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
exchangeStream
public <I> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer<?>>> exchangeStream(@NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
exchangeStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
exchangeStream
public <I> org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer<?>>> exchangeStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<?> errorType) - Specified by:
exchangeStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
public <I,O> org.reactivestreams.Publisher<O> jsonStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> type) - Specified by:
jsonStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
public <I,O> org.reactivestreams.Publisher<O> jsonStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> type, @NonNull @NonNull io.micronaut.core.type.Argument<?> errorType) - Specified by:
jsonStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
public <I> org.reactivestreams.Publisher<Map<String,Object>> jsonStream(@NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
jsonStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
public <I,O> org.reactivestreams.Publisher<O> jsonStream(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull Class<O> type) - Specified by:
jsonStreamin interfaceio.micronaut.http.client.StreamingHttpClient
-
exchange
public <I,O, org.reactivestreams.Publisher<io.micronaut.http.HttpResponse<O>> exchangeE> (@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> bodyType, @NonNull @NonNull io.micronaut.core.type.Argument<E> errorType) - Specified by:
exchangein interfaceio.micronaut.http.client.HttpClient
-
retrieve
public <I,O, org.reactivestreams.Publisher<O> retrieveE> (io.micronaut.http.HttpRequest<I> request, io.micronaut.core.type.Argument<O> bodyType, io.micronaut.core.type.Argument<E> errorType) - Specified by:
retrievein interfaceio.micronaut.http.client.HttpClient
-
connect
public <T extends AutoCloseable> org.reactivestreams.Publisher<T> connect(Class<T> clientEndpointType, io.micronaut.http.MutableHttpRequest<?> request) - Specified by:
connectin interfaceio.micronaut.websocket.WebSocketClient
-
connect
public <T extends AutoCloseable> org.reactivestreams.Publisher<T> connect(Class<T> clientEndpointType, Map<String, Object> parameters) - Specified by:
connectin interfaceio.micronaut.websocket.WebSocketClient
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceio.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>- Specified by:
closein interfaceio.micronaut.websocket.WebSocketClient
-
proxy
public org.reactivestreams.Publisher<io.micronaut.http.MutableHttpResponse<?>> proxy(@NonNull io.micronaut.http.HttpRequest<?> request) - Specified by:
proxyin interfaceio.micronaut.http.client.ProxyHttpClient
-
proxy
public org.reactivestreams.Publisher<io.micronaut.http.MutableHttpResponse<?>> proxy(@NonNull io.micronaut.http.HttpRequest<?> request, @NonNull @NonNull io.micronaut.http.client.ProxyRequestOptions options) - Specified by:
proxyin interfaceio.micronaut.http.client.ProxyHttpClient
-
resolveRequestURI
protected <I> io.micronaut.core.execution.ExecutionFlow<URI> resolveRequestURI(io.micronaut.http.HttpRequest<I> request) - Type Parameters:
I- The input type- Parameters:
request- The request- Returns:
- A
Publisherwith the resolved URI
-
resolveRequestURI
protected <I> io.micronaut.core.execution.ExecutionFlow<URI> resolveRequestURI(io.micronaut.http.HttpRequest<I> request, boolean includeContextPath) - Type Parameters:
I- The input type- Parameters:
request- The requestincludeContextPath- Whether to prepend the client context path- Returns:
- A
Publisherwith the resolved URI
-
resolveRedirectURI
protected <I> io.micronaut.core.execution.ExecutionFlow<URI> resolveRedirectURI(io.micronaut.http.HttpRequest<?> parentRequest, io.micronaut.http.HttpRequest<I> request) - Type Parameters:
I- The input type- Parameters:
parentRequest- The parent requestrequest- The redirect location request- Returns:
- A
Publisherwith the resolved URI
-
getLoadBalancerDiscriminator
- Returns:
- The discriminator to use when selecting a server for the purposes of load balancing (defaults to null)
-
exchange
public org.reactivestreams.Publisher<? extends io.micronaut.http.HttpResponse<?>> exchange(io.micronaut.http.HttpRequest<?> request, @Nullable @Nullable io.micronaut.http.body.CloseableByteBody requestBody, @Nullable @Nullable Thread blockedThread) - Specified by:
exchangein interfaceio.micronaut.http.client.RawHttpClient
-
builder()instead.