- All Superinterfaces:
AutoCloseable
The HTTP client context that we use to build and process requests.
HttpClient client = HttpClient.builder()
.baseUrl("http://localhost:8080")
.bodyAdapter(new JacksonBodyAdapter())
.build();
HelloDto dto = client.request()
.path("hello")
.queryParam("name", "Rob")
.queryParam("say", "Whats up")
.GET()
.bean(HelloDto.class);
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceBuilds the HttpClient.static interfaceComponents register Generated Client interface Providersstatic interfaceStatistic metrics collected to provide an overview of activity of this client. -
Method Summary
Modifier and TypeMethodDescriptionReturn the BodyAdapter that this client is using.static HttpClient.Builderbuilder()Return the builder to config and build the client context.voidclose()Note: invoking this method has no effect on JDK versions less than 21.<T> TReturn the http client API implementation.<T> Tcreate(Class<T> clientInterface, ClassLoader classLoader) Return the http client API implementation using the given ClassLoader.metrics()Return the current aggregate metrics.metrics(boolean reset) Return the current metrics with the option of resetting the underlying counters.request()Create a new request.url()Returns a UrlBuilder to build a URL, considering the base URL.
-
Method Details
-
builder
Return the builder to config and build the client context.HttpClient client = HttpClient.builder() .baseUrl("http://localhost:8080") .bodyAdapter(new JacksonBodyAdapter()) .build(); HttpResponse<String> res = client.request() .path("hello") .GET().asString(); -
create
Return the http client API implementation.- Type Parameters:
T- The service type.- Parameters:
clientInterface- A@Clientinterface with annotated API methods.- Returns:
- The http client API implementation.
-
create
Return the http client API implementation using the given ClassLoader.- Type Parameters:
T- The service type.- Parameters:
clientInterface- A@Clientinterface with annotated API methods.classLoader- The ClassLoader to use to service load the implementation- Returns:
- The http client API implementation.
-
request
HttpClientRequest request()Create a new request. -
url
UrlBuilder url()Returns a UrlBuilder to build a URL, considering the base URL. -
bodyAdapter
BodyAdapter bodyAdapter()Return the BodyAdapter that this client is using. -
metrics
HttpClient.Metrics metrics()Return the current aggregate metrics.These metrics are collected for all requests sent via this context.
-
metrics
Return the current metrics with the option of resetting the underlying counters.These metrics are collected for all requests sent via this context.
-
close
void close()Note: invoking this method has no effect on JDK versions less than 21.Initiates an orderly shutdown in which http requests previously submitted are run to completion, but no new requests will be accepted. Running a request to completion may involve running several operations in the background, including waiting for responses to be delivered. This method waits until all operations have completed execution and the client has terminated.
- Specified by:
closein interfaceAutoCloseable
-