Class ApiClient

java.lang.Object
io.dialob.api.client.okhttp.ApiClient

@Generated(value="io.swagger.codegen.v3.generators.java.JavaClientCodegen", date="2022-12-19T14:06:29.374786706Z[Etc/UTC]") public class ApiClient extends Object
  • Field Details

    • objectMapper

      protected com.fasterxml.jackson.databind.ObjectMapper objectMapper
  • Constructor Details

    • 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 -
    • ApiClient

      public ApiClient(String authName, String clientId, String secret, String username, String password)
      Helper constructor for single password oauth2
      Parameters:
      authName -
      clientId -
      secret -
      username -
      password -
  • Method Details

    • getBasePath

      public String getBasePath()
    • setBasePath

      public ApiClient setBasePath(String basePath)
    • getApiAuthorizations

      public Map<String,feign.RequestInterceptor> getApiAuthorizations()
    • 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 - Username
      password - 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 Token
      expiresIn - 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 ID
      clientSecret - Client secret
      redirectURI - 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 name
      authorization - Request interceptor