Package com.landawn.abacus.http
Class HttpClient
java.lang.Object
com.landawn.abacus.http.HttpClient
Any header can be set into the parameter
HttpClient is thread safe.
settings
HttpClient is thread safe.
- Since:
- 0.8
- Author:
- Haiyang Li
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Unit is milliseconds.static final int
static final int
-
Method Summary
Modifier and TypeMethodDescriptionasyncDelete
(HttpSettings settings) <T> ContinuableFuture<T>
asyncDelete
(Class<T> resultClass) <T> ContinuableFuture<T>
asyncDelete
(Class<T> resultClass, HttpSettings settings) <T> ContinuableFuture<T>
asyncDelete
(Class<T> resultClass, Object queryParameters) <T> ContinuableFuture<T>
asyncDelete
(Class<T> resultClass, Object queryParameters, HttpSettings settings) asyncDelete
(Object queryParameters) asyncDelete
(Object queryParameters, HttpSettings settings) asyncExecute
(HttpMethod httpMethod, Object request) asyncExecute
(HttpMethod httpMethod, Object request, HttpSettings settings) asyncExecute
(File output, HttpMethod httpMethod, Object request, HttpSettings settings) asyncExecute
(OutputStream output, HttpMethod httpMethod, Object request, HttpSettings settings) asyncExecute
(Writer output, HttpMethod httpMethod, Object request, HttpSettings settings) <T> ContinuableFuture<T>
asyncExecute
(Class<T> resultClass, HttpMethod httpMethod, Object request) <T> ContinuableFuture<T>
asyncExecute
(Class<T> resultClass, HttpMethod httpMethod, Object request, HttpSettings settings) asyncGet()
asyncGet
(HttpSettings settings) <T> ContinuableFuture<T>
<T> ContinuableFuture<T>
asyncGet
(Class<T> resultClass, HttpSettings settings) <T> ContinuableFuture<T>
<T> ContinuableFuture<T>
asyncGet
(Class<T> resultClass, Object queryParameters, HttpSettings settings) asyncGet
(Object queryParameters, HttpSettings settings) <T> ContinuableFuture<T>
<T> ContinuableFuture<T>
asyncPost
(Class<T> resultClass, Object request, HttpSettings settings) asyncPost
(Object request, HttpSettings settings) <T> ContinuableFuture<T>
<T> ContinuableFuture<T>
asyncPut
(Class<T> resultClass, Object request, HttpSettings settings) asyncPut
(Object request, HttpSettings settings) void
close()
Close.static HttpClient
static HttpClient
static HttpClient
static HttpClient
create
(String url, int maxConnection, long connectionTimeoutInMillis, long readTimeoutInMillis, HttpSettings settings) static HttpClient
create
(String url, int maxConnection, long connectionTimeoutInMillis, long readTimeoutInMillis, HttpSettings settings, AtomicInteger sharedActiveConnectionCounter) static HttpClient
delete()
delete
(HttpSettings settings) <T> T
<T> T
delete
(Class<T> resultClass, HttpSettings settings) <T> T
<T> T
delete
(Class<T> resultClass, Object queryParameters, HttpSettings settings) delete
(Object queryParameters, HttpSettings settings) execute
(HttpMethod httpMethod, Object request) execute
(HttpMethod httpMethod, Object request, HttpSettings settings) void
execute
(File output, HttpMethod httpMethod, Object request, HttpSettings settings) void
execute
(OutputStream output, HttpMethod httpMethod, Object request, HttpSettings settings) void
execute
(Writer output, HttpMethod httpMethod, Object request, HttpSettings settings) <T> T
execute
(Class<T> resultClass, HttpMethod httpMethod, Object request) <T> T
execute
(Class<T> resultClass, HttpMethod httpMethod, Object request, HttpSettings settings) get()
get
(HttpSettings settings) <T> T
<T> T
get
(Class<T> resultClass, HttpSettings settings) <T> T
<T> T
get
(Class<T> resultClass, Object queryParameters, HttpSettings settings) get
(Object queryParameters, HttpSettings settings) <T> T
<T> T
post
(Class<T> resultClass, Object request, HttpSettings settings) post
(Object request, HttpSettings settings) <T> T
<T> T
put
(Class<T> resultClass, Object request, HttpSettings settings) put
(Object request, HttpSettings settings) url()
-
Field Details
-
DEFAULT_MAX_CONNECTION
public static final int DEFAULT_MAX_CONNECTION- See Also:
-
DEFAULT_CONNECTION_TIMEOUT
public static final int DEFAULT_CONNECTION_TIMEOUTUnit is milliseconds.- See Also:
-
DEFAULT_READ_TIMEOUT
public static final int DEFAULT_READ_TIMEOUT- See Also:
-
-
Method Details
-
create
- Parameters:
url
-- Returns:
-
create
- Parameters:
url
-maxConnection
-- Returns:
-
create
public static HttpClient create(String url, long connectionTimeoutInMillis, long readTimeoutInMillis) - Parameters:
url
-connectionTimeoutInMillis
-readTimeoutInMillis
-- Returns:
-
create
public static HttpClient create(String url, int maxConnection, long connectionTimeoutInMillis, long readTimeoutInMillis) - Parameters:
url
-maxConnection
-connectionTimeoutInMillis
-readTimeoutInMillis
-- Returns:
-
create
public static HttpClient create(String url, int maxConnection, long connectionTimeoutInMillis, long readTimeoutInMillis, HttpSettings settings) throws UncheckedIOException - Parameters:
url
-maxConnection
-connectionTimeoutInMillis
-readTimeoutInMillis
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
create
public static HttpClient create(String url, int maxConnection, long connectionTimeoutInMillis, long readTimeoutInMillis, HttpSettings settings, AtomicInteger sharedActiveConnectionCounter) - Parameters:
url
-maxConnection
-connectionTimeoutInMillis
-readTimeoutInMillis
-settings
-sharedActiveConnectionCounter
-- Returns:
-
url
-
get
- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
- Parameters:
settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
- Parameters:
queryParameters
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
- Parameters:
queryParameters
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
- Type Parameters:
T
-- Parameters:
resultClass
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
- Type Parameters:
T
-- Parameters:
resultClass
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
- Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
get
public <T> T get(Class<T> resultClass, Object queryParameters, HttpSettings settings) throws UncheckedIOException - Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
asyncGet
-
asyncGet
- Parameters:
settings
-- Returns:
-
asyncGet
- Parameters:
queryParameters
-- Returns:
-
asyncGet
- Parameters:
queryParameters
-settings
-- Returns:
-
asyncGet
- Type Parameters:
T
-- Parameters:
resultClass
-- Returns:
-
asyncGet
- Type Parameters:
T
-- Parameters:
resultClass
-settings
-- Returns:
-
asyncGet
- Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-- Returns:
-
asyncGet
public <T> ContinuableFuture<T> asyncGet(Class<T> resultClass, Object queryParameters, HttpSettings settings) - Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-settings
-- Returns:
-
delete
- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
- Parameters:
settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
- Parameters:
queryParameters
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
- Parameters:
queryParameters
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
- Type Parameters:
T
-- Parameters:
resultClass
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
- Type Parameters:
T
-- Parameters:
resultClass
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
- Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
delete
public <T> T delete(Class<T> resultClass, Object queryParameters, HttpSettings settings) throws UncheckedIOException - Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
asyncDelete
-
asyncDelete
- Parameters:
settings
-- Returns:
-
asyncDelete
- Parameters:
queryParameters
-- Returns:
-
asyncDelete
- Parameters:
queryParameters
-settings
-- Returns:
-
asyncDelete
- Type Parameters:
T
-- Parameters:
resultClass
-- Returns:
-
asyncDelete
- Type Parameters:
T
-- Parameters:
resultClass
-settings
-- Returns:
-
asyncDelete
- Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-- Returns:
-
asyncDelete
public <T> ContinuableFuture<T> asyncDelete(Class<T> resultClass, Object queryParameters, HttpSettings settings) - Type Parameters:
T
-- Parameters:
resultClass
-queryParameters
-settings
-- Returns:
-
post
- Parameters:
request
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
post
- Parameters:
request
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
post
- Type Parameters:
T
-- Parameters:
resultClass
-request
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
post
public <T> T post(Class<T> resultClass, Object request, HttpSettings settings) throws UncheckedIOException - Type Parameters:
T
-- Parameters:
resultClass
-request
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
asyncPost
- Parameters:
request
-- Returns:
-
asyncPost
- Parameters:
request
-settings
-- Returns:
-
asyncPost
- Type Parameters:
T
-- Parameters:
resultClass
-request
-- Returns:
-
asyncPost
public <T> ContinuableFuture<T> asyncPost(Class<T> resultClass, Object request, HttpSettings settings) - Type Parameters:
T
-- Parameters:
resultClass
-request
-settings
-- Returns:
-
put
- Parameters:
request
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
put
- Parameters:
request
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
put
- Type Parameters:
T
-- Parameters:
resultClass
-request
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
put
public <T> T put(Class<T> resultClass, Object request, HttpSettings settings) throws UncheckedIOException - Type Parameters:
T
-- Parameters:
resultClass
-request
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
asyncPut
- Parameters:
request
-- Returns:
-
asyncPut
- Parameters:
request
-settings
-- Returns:
-
asyncPut
- Type Parameters:
T
-- Parameters:
resultClass
-request
-- Returns:
-
asyncPut
public <T> ContinuableFuture<T> asyncPut(Class<T> resultClass, Object request, HttpSettings settings) - Type Parameters:
T
-- Parameters:
resultClass
-request
-settings
-- Returns:
-
execute
- Parameters:
httpMethod
-request
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
execute
public String execute(HttpMethod httpMethod, Object request, HttpSettings settings) throws UncheckedIOException - Parameters:
httpMethod
-request
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
execute
public <T> T execute(Class<T> resultClass, HttpMethod httpMethod, Object request) throws UncheckedIOException - Type Parameters:
T
-- Parameters:
resultClass
-httpMethod
-request
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
execute
public <T> T execute(Class<T> resultClass, HttpMethod httpMethod, Object request, HttpSettings settings) throws UncheckedIOException - Type Parameters:
T
-- Parameters:
resultClass
-httpMethod
-request
-settings
-- Returns:
- Throws:
UncheckedIOException
- the unchecked IO exception
-
execute
public void execute(File output, HttpMethod httpMethod, Object request, HttpSettings settings) throws UncheckedIOException - Parameters:
output
-httpMethod
-request
-settings
-- Throws:
UncheckedIOException
- the unchecked IO exception
-
execute
public void execute(OutputStream output, HttpMethod httpMethod, Object request, HttpSettings settings) throws UncheckedIOException - Parameters:
output
-httpMethod
-request
-settings
-- Throws:
UncheckedIOException
- the unchecked IO exception
-
execute
public void execute(Writer output, HttpMethod httpMethod, Object request, HttpSettings settings) throws UncheckedIOException - Parameters:
output
-httpMethod
-request
-settings
-- Throws:
UncheckedIOException
- the unchecked IO exception
-
asyncExecute
- Parameters:
httpMethod
-request
-- Returns:
-
asyncExecute
public ContinuableFuture<String> asyncExecute(HttpMethod httpMethod, Object request, HttpSettings settings) - Parameters:
httpMethod
-request
-settings
-- Returns:
-
asyncExecute
public <T> ContinuableFuture<T> asyncExecute(Class<T> resultClass, HttpMethod httpMethod, Object request) - Type Parameters:
T
-- Parameters:
resultClass
-httpMethod
-request
-- Returns:
-
asyncExecute
public <T> ContinuableFuture<T> asyncExecute(Class<T> resultClass, HttpMethod httpMethod, Object request, HttpSettings settings) - Type Parameters:
T
-- Parameters:
resultClass
-httpMethod
-request
-settings
-- Returns:
-
asyncExecute
public ContinuableFuture<Void> asyncExecute(File output, HttpMethod httpMethod, Object request, HttpSettings settings) - Parameters:
output
-httpMethod
-request
-settings
-- Returns:
-
asyncExecute
public ContinuableFuture<Void> asyncExecute(OutputStream output, HttpMethod httpMethod, Object request, HttpSettings settings) - Parameters:
output
-httpMethod
-request
-settings
-- Returns:
-
asyncExecute
public ContinuableFuture<Void> asyncExecute(Writer output, HttpMethod httpMethod, Object request, HttpSettings settings) - Parameters:
output
-httpMethod
-request
-settings
-- Returns:
-
close
public void close()Close.
-