Package io.micronaut.rxjava2.http.client
Interface RxHttpClient
- All Superinterfaces:
AutoCloseable
,Closeable
,io.micronaut.http.client.HttpClient
,io.micronaut.context.LifeCycle<io.micronaut.http.client.HttpClient>
- All Known Subinterfaces:
RxStreamingHttpClient
public interface RxHttpClient
extends io.micronaut.http.client.HttpClient
Extended version of
HttpClient
that exposes an RxJava 2.x specific interface.- Since:
- 1.0
- Author:
- graemerocher
-
Field Summary
Fields inherited from interface io.micronaut.http.client.HttpClient
DEFAULT_ERROR_TYPE
-
Method Summary
Modifier and TypeMethodDescriptionstatic RxHttpClient
Create a newRxHttpClient
.static RxHttpClient
Create a newRxHttpClient
with the specified configuration.default <I> io.reactivex.Flowable<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer>>
exchange
(@NonNull io.micronaut.http.HttpRequest<I> request) default <I,
O> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> exchange
(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> bodyType) <I,
O, E> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> exchange
(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> bodyType, @NonNull io.micronaut.core.type.Argument<E> errorType) default <I,
O> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> default io.reactivex.Flowable<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer>>
default <O> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>>
default <I> io.reactivex.Flowable<String>
retrieve
(@NonNull io.micronaut.http.HttpRequest<I> request) default <I,
O> io.reactivex.Flowable<O> retrieve
(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> bodyType) default <I,
O, E> io.reactivex.Flowable<O> retrieve
(@NonNull io.micronaut.http.HttpRequest<I> request, @NonNull io.micronaut.core.type.Argument<O> bodyType, @NonNull io.micronaut.core.type.Argument<E> errorType) default <I,
O> io.reactivex.Flowable<O> default io.reactivex.Flowable<String>
Methods inherited from interface io.micronaut.http.client.HttpClient
refresh, toBlocking
Methods inherited from interface io.micronaut.context.LifeCycle
close, isRunning, start, stop
-
Method Details
-
exchange
default <I,O> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> exchange(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> bodyType) - Specified by:
exchange
in interfaceio.micronaut.http.client.HttpClient
-
exchange
<I,O, io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> exchangeE> (@NonNull @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:
exchange
in interfaceio.micronaut.http.client.HttpClient
-
retrieve
default <I,O, io.reactivex.Flowable<O> retrieveE> (@NonNull @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:
retrieve
in interfaceio.micronaut.http.client.HttpClient
-
exchange
default <I> io.reactivex.Flowable<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer>> exchange(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
exchange
in interfaceio.micronaut.http.client.HttpClient
-
exchange
default io.reactivex.Flowable<io.micronaut.http.HttpResponse<io.micronaut.core.io.buffer.ByteBuffer>> exchange(@NonNull @NonNull String uri) - Specified by:
exchange
in interfaceio.micronaut.http.client.HttpClient
-
exchange
default <O> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> exchange(@NonNull @NonNull String uri, @NonNull @NonNull Class<O> bodyType) - Specified by:
exchange
in interfaceio.micronaut.http.client.HttpClient
-
exchange
default <I,O> io.reactivex.Flowable<io.micronaut.http.HttpResponse<O>> exchange(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull Class<O> bodyType) - Specified by:
exchange
in interfaceio.micronaut.http.client.HttpClient
-
retrieve
default <I,O> io.reactivex.Flowable<O> retrieve(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull io.micronaut.core.type.Argument<O> bodyType) - Specified by:
retrieve
in interfaceio.micronaut.http.client.HttpClient
-
retrieve
default <I,O> io.reactivex.Flowable<O> retrieve(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request, @NonNull @NonNull Class<O> bodyType) - Specified by:
retrieve
in interfaceio.micronaut.http.client.HttpClient
-
retrieve
default <I> io.reactivex.Flowable<String> retrieve(@NonNull @NonNull io.micronaut.http.HttpRequest<I> request) - Specified by:
retrieve
in interfaceio.micronaut.http.client.HttpClient
-
retrieve
- Specified by:
retrieve
in interfaceio.micronaut.http.client.HttpClient
-
create
Create a newRxHttpClient
. Note that this method should only be used outside of the context of a Micronaut application. The returnedRxHttpClient
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 RxHttpClient create(@Nullable @Nullable URL url, @NonNull @NonNull io.micronaut.http.client.HttpClientConfiguration configuration) Create a newRxHttpClient
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:
- 2.2.0
-