Package io.dialob.api.client.okhttp
Class ApiClient
- java.lang.Object
-
- io.dialob.api.client.okhttp.ApiClient
-
@Generated(value="io.swagger.codegen.v3.generators.java.JavaClientCodegen", date="2022-09-10T07:26:15.013471Z[Etc/UTC]") public class ApiClient extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceApiClient.Api
-
Field Summary
Fields Modifier and Type Field Description protected com.fasterxml.jackson.databind.ObjectMapperobjectMapper
-
Constructor Summary
Constructors Constructor Description ApiClient()ApiClient(String authName)Basic constructor for single auth nameApiClient(String[] authNames)ApiClient(String authName, String apiKey)Helper constructor for single api keyApiClient(String authName, String username, String password)Helper constructor for single basic auth or password oauth2ApiClient(String authName, String clientId, String secret, String username, String password)Helper constructor for single password oauth2
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAuthorization(String authName, feign.RequestInterceptor authorization)Adds an authorization to be used by the client<T extends ApiClient.Api>
TbuildClient(Class<T> clientClass)Creates a feign client for given API interface.voidconfigureAuthorizationFlow(String clientId, String clientSecret, String redirectURI)Helper method to configure the oauth accessCode/implicit flow parametersMap<String,feign.RequestInterceptor>getApiAuthorizations()feign.RequestInterceptorgetAuthorization(String authName)Gets request interceptor based on authentication nameorg.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuildergetAuthorizationEndPoint()Helper method to configure authorization endpoint of the first oauth found in the apiAuthorizations (there should be only one)StringgetBasePath()feign.Feign.BuildergetFeignBuilder()com.fasterxml.jackson.databind.ObjectMappergetObjectMapper()org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuildergetTokenEndPoint()Helper method to configure the token endpoint of the first oauth found in the apiAuthorizations (there should be only one)voidregisterAccessTokenListener(OAuth.AccessTokenListener accessTokenListener)Configures a listener which is notified when a new access token is received.StringselectHeaderAccept(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)StringselectHeaderContentType(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.voidsetAccessToken(String accessToken, Long expiresIn)Helper method to pre-set the oauth access token of the first oauth found in the apiAuthorizations (there should be only one)voidsetApiAuthorizations(Map<String,feign.RequestInterceptor> apiAuthorizations)voidsetApiKey(String apiKey)Helper method to configure the first api key foundApiClientsetBasePath(String basePath)voidsetCredentials(String username, String password)Helper method to configure the username/password for basic auth or password OAuthApiClientsetFeignBuilder(feign.Feign.Builder feignBuilder)
-
-
-
Constructor Detail
-
ApiClient
public ApiClient()
-
ApiClient
public ApiClient(String[] authNames)
-
ApiClient
public ApiClient(String authName)
Basic constructor for single auth name- Parameters:
authName-
-
ApiClient
public ApiClient(String authName, String apiKey)
Helper constructor for single api key- Parameters:
authName-apiKey-
-
ApiClient
public ApiClient(String authName, String username, String password)
Helper constructor for single basic auth or password oauth2- Parameters:
authName-username-password-
-
-
Method Detail
-
getBasePath
public String getBasePath()
-
setApiAuthorizations
public void setApiAuthorizations(Map<String,feign.RequestInterceptor> apiAuthorizations)
-
getFeignBuilder
public feign.Feign.Builder getFeignBuilder()
-
setFeignBuilder
public ApiClient setFeignBuilder(feign.Feign.Builder feignBuilder)
-
getObjectMapper
public com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()
-
buildClient
public <T extends ApiClient.Api> T buildClient(Class<T> clientClass)
Creates a feign client for given API interface. Usage: ApiClient apiClient = new ApiClient(); apiClient.setBasePath("http://localhost:8080"); XYZApi api = apiClient.buildClient(XYZApi.class); XYZResponse response = api.someMethod(...);- Type Parameters:
T- Type- Parameters:
clientClass- Client class- Returns:
- The Client
-
selectHeaderAccept
public String 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)- 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
public 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.- Parameters:
contentTypes- The Content-Type array to select from- Returns:
- The Content-Type header to use. If the given array is empty, JSON will be used.
-
setApiKey
public void setApiKey(String apiKey)
Helper method to configure the first api key found- Parameters:
apiKey- API key
-
setCredentials
public void setCredentials(String username, String password)
Helper method to configure the username/password for basic auth or password OAuth- Parameters:
username- Usernamepassword- Password
-
getTokenEndPoint
public org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder getTokenEndPoint()
Helper method to configure the token endpoint of the first oauth found in the apiAuthorizations (there should be only one)- Returns:
- Token request builder
-
getAuthorizationEndPoint
public org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder getAuthorizationEndPoint()
Helper method to configure authorization endpoint of the first oauth found in the apiAuthorizations (there should be only one)- Returns:
- Authentication request builder
-
setAccessToken
public void setAccessToken(String accessToken, Long expiresIn)
Helper method to pre-set the oauth access token of the first oauth found in the apiAuthorizations (there should be only one)- Parameters:
accessToken- Access TokenexpiresIn- Validity period in seconds
-
configureAuthorizationFlow
public void configureAuthorizationFlow(String clientId, String clientSecret, String redirectURI)
Helper method to configure the oauth accessCode/implicit flow parameters- Parameters:
clientId- Client IDclientSecret- Client secretredirectURI- Redirect URI
-
registerAccessTokenListener
public void registerAccessTokenListener(OAuth.AccessTokenListener accessTokenListener)
Configures a listener which is notified when a new access token is received.- Parameters:
accessTokenListener- Acesss token listener
-
getAuthorization
public feign.RequestInterceptor getAuthorization(String authName)
Gets request interceptor based on authentication name- Parameters:
authName- Authentiation name- Returns:
- Request Interceptor
-
addAuthorization
public void addAuthorization(String authName, feign.RequestInterceptor authorization)
Adds an authorization to be used by the client- Parameters:
authName- Authentication nameauthorization- Request interceptor
-
-