Package org.apache.iceberg.rest
Class BaseHTTPClient
java.lang.Object
org.apache.iceberg.rest.BaseHTTPClient
- All Implemented Interfaces:
Closeable,AutoCloseable,RESTClient
- Direct Known Subclasses:
HTTPClient
A base class for
RESTClient implementations.
All methods in RESTClient are implemented in the same way: first, an HTTPRequest is built from the
method arguments, then executed.
This allows subclasses to provide a consistent way to execute all requests, regardless of the method or arguments.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract HTTPRequestbuildRequest(HTTPRequest.HTTPMethod method, String path, Map<String, String> queryParams, Map<String, String> headers, Object body) <T extends RESTResponse>
Tdelete(String path, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) <T extends RESTResponse>
Tdelete(String path, Map<String, String> queryParams, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) protected abstract <T extends RESTResponse>
Texecute(HTTPRequest request, Class<T> responseType, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders) protected <T extends RESTResponse>
Texecute(HTTPRequest request, Class<T> responseType, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders, ParserContext parserContext) <T extends RESTResponse>
Tget(String path, Map<String, String> queryParams, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) <T extends RESTResponse>
Tget(String path, Map<String, String> queryParams, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler, ParserContext parserContext) void<T extends RESTResponse>
Tpost(String path, RESTRequest body, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) <T extends RESTResponse>
Tpost(String path, RESTRequest body, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders) <T extends RESTResponse>
Tpost(String path, RESTRequest body, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders, ParserContext parserContext) <T extends RESTResponse>
TpostForm(String path, Map<String, String> formData, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) abstract RESTClientwithAuthSession(AuthSession session) Returns a REST client that authenticates requests using the given session.
-
Constructor Details
-
BaseHTTPClient
public BaseHTTPClient()
-
-
Method Details
-
withAuthSession
Description copied from interface:RESTClientReturns a REST client that authenticates requests using the given session.Implementation requirements:
- Closing the returned client SHOULD NOT affect this client: if they share common resources, the resources SHOULD NOT be closed until the parent client is closed.
- Closing the returned client SHOULD NOT close the given AuthSession: this is the responsibility of this method's caller.
- Specified by:
withAuthSessionin interfaceRESTClient
-
head
- Specified by:
headin interfaceRESTClient
-
delete
public <T extends RESTResponse> T delete(String path, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) - Specified by:
deletein interfaceRESTClient
-
delete
public <T extends RESTResponse> T delete(String path, Map<String, String> queryParams, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) - Specified by:
deletein interfaceRESTClient
-
get
public <T extends RESTResponse> T get(String path, Map<String, String> queryParams, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) - Specified by:
getin interfaceRESTClient
-
get
public <T extends RESTResponse> T get(String path, Map<String, String> queryParams, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler, ParserContext parserContext) - Specified by:
getin interfaceRESTClient
-
post
public <T extends RESTResponse> T post(String path, RESTRequest body, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) - Specified by:
postin interfaceRESTClient
-
post
public <T extends RESTResponse> T post(String path, RESTRequest body, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders) - Specified by:
postin interfaceRESTClient
-
post
public <T extends RESTResponse> T post(String path, RESTRequest body, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders, ParserContext parserContext) - Specified by:
postin interfaceRESTClient
-
postForm
public <T extends RESTResponse> T postForm(String path, Map<String, String> formData, Class<T> responseType, Map<String, String> headers, Consumer<ErrorResponse> errorHandler) - Specified by:
postFormin interfaceRESTClient
-
buildRequest
protected abstract HTTPRequest buildRequest(HTTPRequest.HTTPMethod method, String path, Map<String, String> queryParams, Map<String, String> headers, Object body) -
execute
protected abstract <T extends RESTResponse> T execute(HTTPRequest request, Class<T> responseType, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders) -
execute
protected <T extends RESTResponse> T execute(HTTPRequest request, Class<T> responseType, Consumer<ErrorResponse> errorHandler, Consumer<Map<String, String>> responseHeaders, ParserContext parserContext)
-