public interface HttpClient extends java.io.Closeable, LifeCycle<HttpClient>
Modifier and Type | Field and Description |
---|---|
static Argument<JsonError> |
DEFAULT_ERROR_TYPE
The default error type.
|
Modifier and Type | Method and Description |
---|---|
static HttpClient |
create(java.net.URL url)
Create a new
HttpClient . |
default <I> org.reactivestreams.Publisher<HttpResponse<ByteBuffer>> |
exchange(HttpRequest<I> request)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher . |
default <I,O> org.reactivestreams.Publisher<HttpResponse<O>> |
exchange(HttpRequest<I> request,
Argument<O> bodyType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
<I,O,E> org.reactivestreams.Publisher<HttpResponse<O>> |
exchange(HttpRequest<I> request,
Argument<O> bodyType,
Argument<E> errorType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
default <I,O> org.reactivestreams.Publisher<HttpResponse<O>> |
exchange(HttpRequest<I> request,
java.lang.Class<O> bodyType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
default org.reactivestreams.Publisher<HttpResponse<ByteBuffer>> |
exchange(java.lang.String uri)
Perform an HTTP GET request for the given request object emitting the full HTTP response from returned
Publisher . |
default <O> org.reactivestreams.Publisher<HttpResponse<O>> |
exchange(java.lang.String uri,
java.lang.Class<O> bodyType)
Perform an HTTP GET request for the given request object emitting the full HTTP response from returned
Publisher . |
default HttpClient |
refresh()
Refreshes the current life cycle object.
|
default <I> org.reactivestreams.Publisher<java.lang.String> |
retrieve(HttpRequest<I> request)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
default <I,O> org.reactivestreams.Publisher<O> |
retrieve(HttpRequest<I> request,
Argument<O> bodyType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
default <I,O,E> org.reactivestreams.Publisher<O> |
retrieve(HttpRequest<I> request,
Argument<O> bodyType,
Argument<E> errorType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
default <I,O> org.reactivestreams.Publisher<O> |
retrieve(HttpRequest<I> request,
java.lang.Class<O> bodyType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
default org.reactivestreams.Publisher<java.lang.String> |
retrieve(java.lang.String uri)
Perform an HTTP GET request for the given request object emitting the full HTTP response from returned
Publisher and converting the response body to the specified type. |
BlockingHttpClient |
toBlocking() |
BlockingHttpClient toBlocking()
<I,O,E> org.reactivestreams.Publisher<HttpResponse<O>> exchange(HttpRequest<I> request, Argument<O> bodyType, Argument<E> errorType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher
and converting the response body to the specified type.
This method will send a Content-Length
header and except a content length header the response and is
designed for simple non-streaming exchanges of data
By default the exchange Content-Type
is application/json, unless otherwise specified in the passed
HttpRequest
I
- The request body typeO
- The response body typeE
- The error typerequest
- The HttpRequest
to executebodyType
- The body typeerrorType
- The error typePublisher
that emits the full HttpResponse
objectdefault <I,O> org.reactivestreams.Publisher<HttpResponse<O>> exchange(HttpRequest<I> request, Argument<O> bodyType)
Perform an HTTP request for the given request object emitting the full HTTP response from returned
Publisher
and converting the response body to the specified type.
This method will send a Content-Length
header and except a content length header the response and is
designed for simple non-streaming exchanges of data
By default the exchange Content-Type
is application/json, unless otherwise specified in the passed
HttpRequest
I
- The request body typeO
- The response body typerequest
- The HttpRequest
to executebodyType
- The body typePublisher
that emits the full HttpResponse
objectdefault <I> org.reactivestreams.Publisher<HttpResponse<ByteBuffer>> exchange(HttpRequest<I> request)
Publisher
.I
- The request body typerequest
- The HttpRequest
to executePublisher
that emits the full HttpResponse
objectdefault org.reactivestreams.Publisher<HttpResponse<ByteBuffer>> exchange(java.lang.String uri)
Publisher
.uri
- The UriPublisher
that emits the full HttpResponse
objectdefault <O> org.reactivestreams.Publisher<HttpResponse<O>> exchange(java.lang.String uri, java.lang.Class<O> bodyType)
Publisher
.O
- The response body typeuri
- The request URIbodyType
- The body typePublisher
that emits the full HttpResponse
objectdefault <I,O> org.reactivestreams.Publisher<HttpResponse<O>> exchange(HttpRequest<I> request, java.lang.Class<O> bodyType)
Publisher
and converting the response body to the specified type.I
- The request body typeO
- The response body typerequest
- The HttpRequest
to executebodyType
- The body typePublisher
that emits the full HttpResponse
objectdefault <I,O,E> org.reactivestreams.Publisher<O> retrieve(HttpRequest<I> request, Argument<O> bodyType, Argument<E> errorType)
Publisher
and converting the response body to the specified type.I
- The request body typeO
- The response body typeE
- The error typerequest
- The HttpRequest
to executebodyType
- The body typeerrorType
- The error typePublisher
that emits a result of the given typedefault <I,O> org.reactivestreams.Publisher<O> retrieve(HttpRequest<I> request, Argument<O> bodyType)
Publisher
and converting the response body to the specified type.I
- The request body typeO
- The response body typerequest
- The HttpRequest
to executebodyType
- The body typePublisher
that emits a result of the given typedefault <I,O> org.reactivestreams.Publisher<O> retrieve(HttpRequest<I> request, java.lang.Class<O> bodyType)
Publisher
and converting the response body to the specified type.I
- The request body typeO
- The response body typerequest
- The HttpRequest
to executebodyType
- The body typePublisher
that emits a result of the given typedefault <I> org.reactivestreams.Publisher<java.lang.String> retrieve(HttpRequest<I> request)
Publisher
and converting the response body to the specified type.I
- The request body typerequest
- The HttpRequest
to executePublisher
that emits String resultdefault org.reactivestreams.Publisher<java.lang.String> retrieve(java.lang.String uri)
Publisher
and converting the response body to the specified type.uri
- The URIPublisher
that emits String resultdefault HttpClient refresh()
LifeCycle
LifeCycle.stop()
followed by LifeCycle.start()
.refresh
in interface LifeCycle<HttpClient>
static HttpClient create(@Nullable java.net.URL url)
HttpClient
. Note that this method should only be used outside of the context of a
Micronaut application. Within Micronaut use Inject
to inject a client instead.url
- The base URL