Package io.micronaut.rxjava2.http.client
Interface RxStreamingHttpClient
- All Superinterfaces:
AutoCloseable
,Closeable
,io.micronaut.http.client.HttpClient
,io.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>
,RxHttpClient
,io.micronaut.http.client.StreamingHttpClient
public interface RxStreamingHttpClient
extends io.micronaut.http.client.StreamingHttpClient, RxHttpClient
Extended version of
StreamingHttpClient
that exposes an RxJava 2.x interface.- Since:
- 1.0
- Author:
- Graeme Rocher
-
Field Summary
Fields inherited from interface io.micronaut.http.client.HttpClient
DEFAULT_ERROR_TYPE
-
Method Summary
Modifier and TypeMethodDescriptionstatic RxStreamingHttpClient
Create a newRxStreamingHttpClient
.static RxStreamingHttpClient
Create a newRxStreamingHttpClient
with the specified configuration.<I> io.reactivex.Flowable<io.micronaut.core.io.buffer.ByteBuffer<?>>
dataStream
(@NonNull io.micronaut.http.HttpRequest<I> request) <I> io.reactivex.Flowable<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer<?>>>
exchangeStream
(@NonNull io.micronaut.http.HttpRequest<I> request) jsonStream
(@NonNull io.micronaut.http.HttpRequest<I> request) <I,
O> io.reactivex.Flowable<O> jsonStream
(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> type) default <I,
O> io.reactivex.Flowable<O> jsonStream
(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull Class<O> type) Methods inherited from interface io.micronaut.http.client.HttpClient
refresh, toBlocking
Methods inherited from interface io.micronaut.context.LifeCycle
close, isRunning, start, stop
Methods inherited from interface io.micronaut.rxjava2.http.client.RxHttpClient
exchange, exchange, exchange, exchange, exchange, exchange, retrieve, retrieve, retrieve, retrieve, retrieve
Methods inherited from interface io.micronaut.http.client.StreamingHttpClient
dataStream, exchangeStream, jsonStream
-
Method Details
-
dataStream
<I> io.reactivex.Flowable<io.micronaut.core.io.buffer.ByteBuffer<?>> dataStream(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
dataStream
in interfaceio.micronaut.http.client.StreamingHttpClient
-
exchangeStream
<I> io.reactivex.Flowable<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer<?>>> exchangeStream(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
exchangeStream
in interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
<I> org.reactivestreams.Publisher<Map<String,Object>> jsonStream(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
jsonStream
in interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
<I,O> io.reactivex.Flowable<O> jsonStream(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> type) - Specified by:
jsonStream
in interfaceio.micronaut.http.client.StreamingHttpClient
-
jsonStream
default <I,O> io.reactivex.Flowable<O> jsonStream(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull Class<O> type) - Specified by:
jsonStream
in interfaceio.micronaut.http.client.StreamingHttpClient
-
create
Create a newRxStreamingHttpClient
. Note that this method should only be used outside of the context of a Micronaut application. The returnedRxStreamingHttpClient
is not subject to dependency injection. The creator is responsible for closing the client to avoid leaking connections. Within a Micronaut application useInject
to inject a client instead.- Parameters:
url
- The base URL- Returns:
- The client
- Since:
- 1.1.0
-
create
static RxStreamingHttpClient create(@Nullable @Nullable URL url, @NonNull @NonNull io.micronaut.http.client.HttpClientConfiguration configuration) Create a newRxStreamingHttpClient
with the specified configuration. Note that this method should only be used outside of the context of an application. Within Micronaut useInject
to inject a client instead- Parameters:
url
- The base URLconfiguration
- the client configuration- Returns:
- The client
- Since:
- 1.1.0
-