Package sonia.scm.net.ahc
Class AdvancedHttpClient
java.lang.Object
sonia.scm.net.ahc.AdvancedHttpClient
Advanced client for http operations.The
AdvancedHttpClient
offers
a fluid interface for handling most common
http operations. The AdvancedHttpClient
can be injected by the
default injection mechanism of SCM-Manager.
Http GET example:
AdvancedHttpResponse response = client.get("https://scm-manager.org")
.decodeGZip(true)
.request();
System.out.println(response.contentAsString());
Http POST example:
AdvancedHttpResponse response = client.post("https://scm-manager.org")
.formContent()
.field("firstname", "Tricia")
.field("lastname", "McMillan")
.build()
.request();
if (response.isSuccessful()){
System.out.println("success");
}
- Since:
- 1.46
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract ContentTransformer
createTransformer
(Class<?> type, String contentType) Creates aContentTransformer
for the given Content-Type.Returns a builder for a DELETE request.Returns a builder for a GET request.Returns a builder for a HEAD request.Returns a request builder with a custom method.Returns a builder for a OPTIONS request.Returns a builder for a POST request.Returns a builder for a PUT request.protected abstract AdvancedHttpResponse
request
(BaseHttpRequest<?> request) Executes the given request and returns the http response.
-
Constructor Details
-
AdvancedHttpClient
public AdvancedHttpClient()
-
-
Method Details
-
createTransformer
Creates aContentTransformer
for the given Content-Type.- Parameters:
type
- object typecontentType
- content-type- Returns:
ContentTransformer
- Throws:
ContentTransformerNotFoundException
- if noContentTransformer
could be found for the content-type
-
request
Executes the given request and returns the http response. Implementation have to check, if the instance is from typeAdvancedHttpRequestWithBody
in order to handle request contents.- Parameters:
request
- request to execute- Returns:
- http response
- Throws:
IOException
-
delete
Returns a builder for a DELETE request. -
head
Returns a builder for a HEAD request. -
method
Returns a request builder with a custom method. Note: not every method is supported by the underlying implementation of the http client. -
options
Returns a builder for a OPTIONS request. -
post
Returns a builder for a POST request. -
put
Returns a builder for a PUT request. -
get
Returns a builder for a GET request.
-