Package org.openapitools.client
Class ApiClient
java.lang.Object
org.openapitools.client.JavaTimeFormatter
org.openapitools.client.ApiClient
@Generated(value="org.openapitools.codegen.languages.JavaClientCodegen",
date="2023-04-19T09:13:44.263607-05:00[America/Chicago]")
@Component("org.openapitools.client.ApiClient")
public class ApiClient
extends JavaTimeFormatter
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsConstructorDescriptionApiClient
(org.springframework.web.client.RestTemplate restTemplate, CacheManager cacheManager) ApiClient
(org.springframework.web.client.RestTemplate restTemplate, CacheManager cacheManager, com.okta.commons.http.config.HttpClientConfiguration httpClientConfiguration) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addCookiesToRequest
(org.springframework.util.MultiValueMap<String, String> cookies, org.springframework.http.RequestEntity.BodyBuilder requestBuilder) Add cookies to the request that is being builtaddDefaultCookie
(String name, String value) Add a default cookie.addDefaultHeader
(String name, String value) Add a default header.protected void
addHeadersToRequest
(org.springframework.http.HttpHeaders headers, org.springframework.http.RequestEntity.BodyBuilder requestBuilder) Add headers to the request that is being builtprotected org.springframework.web.client.RestTemplate
Build the RestTemplate used to make HTTP requests.protected org.springframework.retry.support.RetryTemplate
collectionPathParameterToString
(ApiClient.CollectionFormat collectionFormat, Collection<?> values) Formats the specified collection path parameter to a string value.expandPath
(String pathTemplate, Map<String, Object> variables) Expand path template with variablesformatDate
(Date date) Format the given Date object into string.generateQueryUri
(org.springframework.util.MultiValueMap<String, String> queryParams, Map<String, Object> uriParams) Include queryParams in uriParams taking into account the paramNamegetAuthentication
(String authName) Get authentication for the given name.Get authentications (key: authentication name, value: authentication).Get the current base pathGet the date format used to parse/format date parameters.protected void
init()
<T> org.springframework.http.ResponseEntity<T>
invokeAPI
(String path, org.springframework.http.HttpMethod method, Map<String, Object> pathParams, org.springframework.util.MultiValueMap<String, String> queryParams, Object body, org.springframework.http.HttpHeaders headerParams, org.springframework.util.MultiValueMap<String, String> cookieParams, org.springframework.util.MultiValueMap<String, Object> formParams, List<org.springframework.http.MediaType> accept, org.springframework.http.MediaType contentType, String[] authNames, org.springframework.core.ParameterizedTypeReference<T> returnType) Invoke API by sending HTTP request with the given options.boolean
Check that whether debugging is enabled for this API client.boolean
isJsonMime
(String mediaType) Check if the givenString
is a JSON MIME.boolean
isJsonMime
(org.springframework.http.MediaType mediaType) Check if the given MIME is a JSON MIME.boolean
isProblemJsonMime
(String mediaType) Check if the givenString
is a Problem JSON MIME (RFC-7807).parameterToMultiValueMap
(ApiClient.CollectionFormat collectionFormat, String name, Object value) Converts a parameter to aMultiValueMap
for use in REST requestsparameterToString
(Object param) Format the given parameter object into string.Parse the given string into Date object.protected Object
selectBody
(Object obj, org.springframework.util.MultiValueMap<String, Object> formParams, org.springframework.http.MediaType contentType) Select the body to use for the requestList<org.springframework.http.MediaType>
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)org.springframework.http.MediaType
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.void
setAccessToken
(String accessToken) Helper method to set access token for the first OAuth2 authentication.void
Helper method to set API key value for the first API key authentication.void
setApiKeyPrefix
(String apiKeyPrefix) Helper method to set API key prefix for the first API key authentication.setBasePath
(String basePath) Set the base path, which should include the hostsetDateFormat
(DateFormat dateFormat) Set the date format used to parse/format date parameters.void
setDebugging
(boolean debugging) setUserAgent
(String userAgent) Set the User-Agent header's value (by adding to the default header map).protected void
updateParamsForAuth
(String[] authNames, org.springframework.util.MultiValueMap<String, String> queryParams, org.springframework.http.HttpHeaders headerParams, org.springframework.util.MultiValueMap<String, String> cookieParams) Update query and header parameters based on authentication settings.Methods inherited from class org.openapitools.client.JavaTimeFormatter
formatOffsetDateTime, getOffsetDateTimeFormatter, parseOffsetDateTime, setOffsetDateTimeFormatter
-
Constructor Details
-
ApiClient
public ApiClient() -
ApiClient
public ApiClient(org.springframework.web.client.RestTemplate restTemplate, CacheManager cacheManager) -
ApiClient
public ApiClient(org.springframework.web.client.RestTemplate restTemplate, CacheManager cacheManager, com.okta.commons.http.config.HttpClientConfiguration httpClientConfiguration)
-
-
Method Details
-
init
protected void init() -
getBasePath
Get the current base path- Returns:
- String the base path
-
setBasePath
Set the base path, which should include the host- Parameters:
basePath
- the base path- Returns:
- ApiClient this client
-
getAuthentications
Get authentications (key: authentication name, value: authentication).- Returns:
- Map the currently configured authentication types
-
getAuthentication
Get authentication for the given name.- Parameters:
authName
- The authentication name- Returns:
- The authentication, null if not found
-
setApiKey
Helper method to set API key value for the first API key authentication.- Parameters:
apiKey
- the API key
-
setApiKeyPrefix
Helper method to set API key prefix for the first API key authentication.- Parameters:
apiKeyPrefix
- API key prefix
-
setAccessToken
Helper method to set access token for the first OAuth2 authentication.- Parameters:
accessToken
- Access token
-
setUserAgent
Set the User-Agent header's value (by adding to the default header map).- Parameters:
userAgent
- the user agent string- Returns:
- ApiClient this client
-
addDefaultHeader
Add a default header.- Parameters:
name
- The header's namevalue
- The header's value- Returns:
- ApiClient this client
-
addDefaultCookie
Add a default cookie.- Parameters:
name
- The cookie's namevalue
- The cookie's value- Returns:
- ApiClient this client
-
setDebugging
public void setDebugging(boolean debugging) -
isDebugging
public boolean isDebugging()Check that whether debugging is enabled for this API client.- Returns:
- boolean true if this client is enabled for debugging, false otherwise
-
getDateFormat
Get the date format used to parse/format date parameters.- Returns:
- DateFormat 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
- the string to parse- Returns:
- the Date parsed from the string
-
formatDate
Format the given Date object into string.- Parameters:
date
- the date to format- Returns:
- the formatted date as string
-
parameterToString
Format the given parameter object into string.- Parameters:
param
- the object to convert- Returns:
- String the parameter represented as a String
-
collectionPathParameterToString
public String collectionPathParameterToString(ApiClient.CollectionFormat collectionFormat, Collection<?> values) Formats the specified collection path parameter to a string value.- Parameters:
collectionFormat
- The collection format of the parameter.values
- The values of the parameter.- Returns:
- String representation of the parameter
-
parameterToMultiValueMap
public org.springframework.util.MultiValueMap<String,String> parameterToMultiValueMap(ApiClient.CollectionFormat collectionFormat, String name, Object value) Converts a parameter to aMultiValueMap
for use in REST requests- Parameters:
collectionFormat
- The format to convert toname
- The name of the parametervalue
- The parameter's value- Returns:
- a Map containing the String value(s) of the input parameter
-
isJsonMime
Check if the givenString
is a JSON MIME.- Parameters:
mediaType
- the input MediaType- Returns:
- boolean true if the MediaType represents JSON, false otherwise
-
isJsonMime
public boolean isJsonMime(org.springframework.http.MediaType mediaType) Check if the given MIME is a JSON MIME. JSON MIME examples: application/json application/json; charset=UTF8 APPLICATION/JSON- Parameters:
mediaType
- the input MediaType- Returns:
- boolean true if the MediaType represents JSON, false otherwise
-
isProblemJsonMime
Check if the givenString
is a Problem JSON MIME (RFC-7807).- Parameters:
mediaType
- the input MediaType- Returns:
- boolean true if the MediaType represents Problem JSON, false otherwise
-
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:
- List The list of MediaTypes to use for the Accept header
-
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:
- MediaType The Content-Type header to use. If the given array is empty, JSON will be used.
-
selectBody
protected Object selectBody(Object obj, org.springframework.util.MultiValueMap<String, Object> formParams, org.springframework.http.MediaType contentType) Select the body to use for the request- Parameters:
obj
- the body objectformParams
- the form parameterscontentType
- the content type of the request- Returns:
- Object the selected body
-
expandPath
Expand path template with variables- Parameters:
pathTemplate
- path template with placeholdersvariables
- variables to replace- Returns:
- path with placeholders replaced by variables
-
generateQueryUri
public String generateQueryUri(org.springframework.util.MultiValueMap<String, String> queryParams, Map<String, Object> uriParams) Include queryParams in uriParams taking into account the paramName- Parameters:
queryParams
- The query parametersuriParams
- The path parameters return templatized query string
-
invokeAPI
public <T> org.springframework.http.ResponseEntity<T> invokeAPI(String path, org.springframework.http.HttpMethod method, Map<String, Object> pathParams, org.springframework.util.MultiValueMap<String, throws org.springframework.web.client.RestClientExceptionString> queryParams, Object body, org.springframework.http.HttpHeaders headerParams, org.springframework.util.MultiValueMap<String, String> cookieParams, org.springframework.util.MultiValueMap<String, Object> formParams, List<org.springframework.http.MediaType> accept, org.springframework.http.MediaType contentType, String[] authNames, org.springframework.core.ParameterizedTypeReference<T> returnType) Invoke API by sending HTTP request with the given options.- Type Parameters:
T
- the return type to use- Parameters:
path
- The sub-path of the HTTP URLmethod
- The request methodpathParams
- The path parametersqueryParams
- The query parametersbody
- The request body objectheaderParams
- The header parameterscookieParams
- The cookie parametersformParams
- The form parametersaccept
- The request's Accept headercontentType
- The request's Content-Type headerauthNames
- The authentications to applyreturnType
- The return type into which to deserialize the response- Returns:
- ResponseEntity<T> The response of the chosen type
- Throws:
org.springframework.web.client.RestClientException
-
addHeadersToRequest
protected void addHeadersToRequest(org.springframework.http.HttpHeaders headers, org.springframework.http.RequestEntity.BodyBuilder requestBuilder) Add headers to the request that is being built- Parameters:
headers
- The headers to addrequestBuilder
- The current request
-
addCookiesToRequest
protected void addCookiesToRequest(org.springframework.util.MultiValueMap<String, String> cookies, org.springframework.http.RequestEntity.BodyBuilder requestBuilder) Add cookies to the request that is being built- Parameters:
cookies
- The cookies to addrequestBuilder
- The current request
-
buildRestTemplate
protected org.springframework.web.client.RestTemplate buildRestTemplate()Build the RestTemplate used to make HTTP requests.- Returns:
- RestTemplate
-
buildRetryTemplate
protected org.springframework.retry.support.RetryTemplate buildRetryTemplate() -
updateParamsForAuth
protected void updateParamsForAuth(String[] authNames, org.springframework.util.MultiValueMap<String, String> queryParams, org.springframework.http.HttpHeaders headerParams, org.springframework.util.MultiValueMap<String, String> cookieParams) Update query and header parameters based on authentication settings.- Parameters:
authNames
- The authentications to applyqueryParams
- The query parametersheaderParams
- The header parameters
-