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. |
static HttpClient |
create(java.net.URL url,
HttpClientConfiguration configuration)
Create a new
HttpClient with the specified configuration. |
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()
LifeCycleLifeCycle.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 URLstatic HttpClient create(@Nullable java.net.URL url, HttpClientConfiguration configuration)
HttpClient with the specified configuration. Note that this method should only be used
outside of the context of an application. Within Micronaut use Inject to inject a client insteadurl - The base URLconfiguration - the client configuration