Class ApiClient
java.lang.Object
io.cloudreactor.tasksymphony.invoker.JavaTimeFormatter
io.cloudreactor.tasksymphony.invoker.ApiClient
@Generated("org.openapitools.codegen.languages.JavaClientCodegen")
public class ApiClient
extends JavaTimeFormatter
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Integerprotected List<ServerConfiguration>protected String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddDefaultCookie(String key, String value) Add a default cookie.addDefaultHeader(String key, String value) Add a default header.protected org.apache.http.cookie.CookiebuildCookie(String key, String value, URI uri) static DateFormat<T> Tdeserialize(org.apache.http.HttpResponse response, com.fasterxml.jackson.core.type.TypeReference<T> valueType) Deserialize response contentescapeString(String str) Escape the given string to be used as URL query value.formatDate(Date date) Format the given Date object into string.getAuthentication(String authName) Get authentication for the given name.Get authentications (key: authentication name, value: authentication).intConnect timeout (in milliseconds).Get the date format used to parse/format date parameters.org.apache.http.impl.client.CloseableHttpClientcom.fasterxml.jackson.databind.ObjectMapperReturns the current object mapper used for JSON serialization/deserialization.Gets the response headers of the previous requestintGets the status code of the previous requestThe path of temporary folder used to store downloaded files from endpoints with file response.<T> TinvokeAPI(String path, String method, List<Pair> queryParams, List<Pair> collectionQueryParams, Object body, Map<String, String> headerParams, Map<String, String> cookieParams, Map<String, Object> formParams, String accept, String contentType, String[] authNames, com.fasterxml.jackson.core.type.TypeReference<T> returnType) Invoke API by sending HTTP request with the given options.protected booleanisBodyAllowed(String method) booleanCheck that whether debugging is enabled for this API client.booleanisJsonMime(String mime) Check if the given MIME is a JSON MIME.protected booleanisSuccessfulStatus(int statusCode) parameterToPair(String name, Object value) Formats the specified query parameter to a list containing a singlePairobject.parameterToPairs(String collectionFormat, String name, Collection value) Formats the specified collection query parameters to a list ofPairobjects.parameterToString(Object param) Format the given parameter object into string.Parse the given string into Date object.protected FileprepareDownloadFile(String contentDisposition) protected <T> TprocessResponse(org.apache.http.client.methods.CloseableHttpResponse response, com.fasterxml.jackson.core.type.TypeReference<T> returnType) selectHeaderAccept(String[] accepts) Select the Accept header's value from the given accepts array: if JSON exists in the given array, use it; otherwise use all of them (joining into a string)selectHeaderContentType(String[] contentTypes) Select the Content-Type header's value from the given array: if JSON exists in the given array, use it; otherwise use the first one of the array.org.apache.http.HttpEntityserialize(Object obj, Map<String, Object> formParams, org.apache.http.entity.ContentType contentType) Serialize the given Java object into string according the given Content-Type (only JSON is supported for now).Helper method to set API key value for the first API key authentication.setApiKeyPrefix(String apiKeyPrefix) Helper method to set API key prefix for the first API key authentication.setBasePath(String basePath) setConnectTimeout(int connectionTimeout) Set the connect timeout (in milliseconds).setDateFormat(DateFormat dateFormat) Set the date format used to parse/format date parameters.setDebugging(boolean debugging) Enable/disable debugging for this API client.setHttpClient(org.apache.http.impl.client.CloseableHttpClient httpClient) setObjectMapper(com.fasterxml.jackson.databind.ObjectMapper objectMapper) setServerIndex(Integer serverIndex) setServers(List<ServerConfiguration> servers) setServerVariables(Map<String, String> serverVariables) setTempFolderPath(String tempFolderPath) Set temp folder pathsetUserAgent(String userAgent) Set the User-Agent header's value (by adding to the default header map).transformResponseHeaders(org.apache.http.Header[] headers) Transform response headers into mapMethods inherited from class io.cloudreactor.tasksymphony.invoker.JavaTimeFormatter
formatOffsetDateTime, getOffsetDateTimeFormatter, parseOffsetDateTime, setOffsetDateTimeFormatter
-
Field Details
-
servers
-
serverIndex
-
serverVariables
-
tempFolderPath
-
-
Constructor Details
-
ApiClient
public ApiClient(org.apache.http.impl.client.CloseableHttpClient httpClient) -
ApiClient
public ApiClient()
-
-
Method Details
-
buildDefaultDateFormat
-
getObjectMapper
public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()Returns the current object mapper used for JSON serialization/deserialization.Note: If you make changes to the object mapper, remember to set it back via
setObjectMapperin order to trigger HTTP client rebuilding.- Returns:
- Object mapper
-
setObjectMapper
- Returns:
- API client
-
getHttpClient
public org.apache.http.impl.client.CloseableHttpClient getHttpClient() -
setHttpClient
- Returns:
- API client
-
getBasePath
-
setBasePath
- Returns:
- API client
-
getServers
-
setServers
- Returns:
- API client
-
getServerIndex
-
setServerIndex
- Returns:
- API client
-
getServerVariables
-
setServerVariables
- Returns:
- API client
-
getStatusCode
public int getStatusCode()Gets the status code of the previous request- Returns:
- Status code
-
getResponseHeaders
Gets the response headers of the previous request- Returns:
- Response headers
-
getAuthentications
Get authentications (key: authentication name, value: authentication).- Returns:
- Map of authentication
-
getAuthentication
Get authentication for the given name.- Parameters:
authName- The authentication name- Returns:
- The authentication, null if not found
-
getTempFolderPath
The path of temporary folder used to store downloaded files from endpoints with file response. The default value isnull, i.e. using the system's default temporary folder.- Returns:
- Temp folder path
-
setApiKey
Helper method to set API key value for the first API key authentication.- Parameters:
apiKey- the API key- Returns:
- API client
-
setApiKeyPrefix
Helper method to set API key prefix for the first API key authentication.- Parameters:
apiKeyPrefix- API key prefix- Returns:
- API client
-
setUserAgent
Set the User-Agent header's value (by adding to the default header map).- Parameters:
userAgent- User agent- Returns:
- API client
-
setTempFolderPath
Set temp folder path- Parameters:
tempFolderPath- Temp folder path- Returns:
- API client
-
addDefaultHeader
Add a default header.- Parameters:
key- The header's keyvalue- The header's value- Returns:
- API client
-
addDefaultCookie
Add a default cookie.- Parameters:
key- The cookie's keyvalue- The cookie's value- Returns:
- API client
-
isDebugging
public boolean isDebugging()Check that whether debugging is enabled for this API client.- Returns:
- True if debugging is on
-
setDebugging
Enable/disable debugging for this API client.- Parameters:
debugging- To enable (true) or disable (false) debugging- Returns:
- API client
-
getConnectTimeout
public int getConnectTimeout()Connect timeout (in milliseconds).- Returns:
- Connection timeout
-
setConnectTimeout
Set the connect timeout (in milliseconds). A value of 0 means no timeout, otherwise values must be between 1 andInteger.MAX_VALUE.- Parameters:
connectionTimeout- Connection timeout in milliseconds- Returns:
- API client
-
getDateFormat
Get the date format used to parse/format date parameters.- Returns:
- Date format
-
setDateFormat
Set the date format used to parse/format date parameters.- Parameters:
dateFormat- Date format- Returns:
- API client
-
parseDate
Parse the given string into Date object.- Parameters:
str- String- Returns:
- Date
-
formatDate
Format the given Date object into string.- Parameters:
date- Date- Returns:
- Date in string format
-
parameterToString
Format the given parameter object into string.- Parameters:
param- Object- Returns:
- Object in string format
-
parameterToPair
Formats the specified query parameter to a list containing a singlePairobject. Note thatvaluemust not be a collection.- Parameters:
name- The name of the parameter.value- The value of the parameter.- Returns:
- A list containing a single
Pairobject.
-
parameterToPairs
Formats the specified collection query parameters to a list ofPairobjects. Note that the values of each of the returned Pair objects are percent-encoded.- Parameters:
collectionFormat- The collection format of the parameter.name- The name of the parameter.value- The value of the parameter.- Returns:
- A list of
Pairobjects.
-
isJsonMime
Check if the given MIME is a JSON MIME. JSON MIME examples: application/json application/json; charset=UTF8 APPLICATION/JSON application/vnd.company+json- Parameters:
mime- MIME- Returns:
- True if MIME type is boolean
-
selectHeaderAccept
Select the Accept header's value from the given accepts array: if JSON exists in the given array, use it; otherwise use all of them (joining into a string)- Parameters:
accepts- The accepts array to select from- Returns:
- The Accept header to use. If the given array is empty, null will be returned (not to set the Accept header explicitly).
-
selectHeaderContentType
Select the Content-Type header's value from the given array: if JSON exists in the given array, use it; otherwise use the first one of the array.- Parameters:
contentTypes- The Content-Type array to select from- Returns:
- The Content-Type header to use. If the given array is empty, or matches "any", JSON will be used.
-
escapeString
Escape the given string to be used as URL query value.- Parameters:
str- String- Returns:
- Escaped string
-
transformResponseHeaders
Transform response headers into map -
serialize
public org.apache.http.HttpEntity serialize(Object obj, Map<String, Object> formParams, org.apache.http.entity.ContentType contentType) throws ApiExceptionSerialize the given Java object into string according the given Content-Type (only JSON is supported for now).- Parameters:
obj- ObjectcontentType- Content typeformParams- Form parameters- Returns:
- Object
- Throws:
ApiException- API exception
-
deserialize
public <T> T deserialize(org.apache.http.HttpResponse response, com.fasterxml.jackson.core.type.TypeReference<T> valueType) throws ApiException, IOException Deserialize response content- Throws:
ApiExceptionIOException
-
prepareDownloadFile
- Throws:
IOException
-
isSuccessfulStatus
protected boolean isSuccessfulStatus(int statusCode) -
isBodyAllowed
-
buildCookie
-
processResponse
protected <T> T processResponse(org.apache.http.client.methods.CloseableHttpResponse response, com.fasterxml.jackson.core.type.TypeReference<T> returnType) throws ApiException, IOException - Throws:
ApiExceptionIOException
-
invokeAPI
public <T> T invokeAPI(String path, String method, List<Pair> queryParams, List<Pair> collectionQueryParams, Object body, Map<String, String> headerParams, Map<String, throws ApiExceptionString> cookieParams, Map<String, Object> formParams, String accept, String contentType, String[] authNames, com.fasterxml.jackson.core.type.TypeReference<T> returnType) Invoke API by sending HTTP request with the given options.- Type Parameters:
T- Type- Parameters:
path- The sub-path of the HTTP URLmethod- The request method, one of "GET", "POST", "PUT", and "DELETE"queryParams- The query parameterscollectionQueryParams- The collection query parametersbody- The request body object - if it is not binary, otherwise nullheaderParams- The header parameterscookieParams- The cookie parametersformParams- The form parametersaccept- The request's Accept headercontentType- The request's Content-Type headerauthNames- The authentications to applyreturnType- Return type- Returns:
- The response body in type of string
- Throws:
ApiException- API exception
-