Class ApiClientBuilder


  • public class ApiClientBuilder
    extends java.lang.Object
    This class implement builder pattern for ApiClient.

    Compared with constructor creation of ApiClient, this option additionally provides some sanity checks.

    Usage:

     
     ApiClient client = ApiClientBuilder.newBuilder()
         .configureBasicAuth("shop_id", "secret_key")
         .build();
     
     
    See Also:
    ApiClient
    • Method Detail

      • apiUrl

        public ApiClientBuilder apiUrl​(java.lang.String apiUrl)
        Sets API url endpoint for client.
        Parameters:
        apiUrl - api endpoint url
        Returns:
        builder itself
      • configureBasicAuth

        public ApiClientBuilder configureBasicAuth​(java.lang.String accountId,
                                                   java.lang.String secretKey)
        Authentication configuration via Basic auth method.

        Only one method (Basic/OAuth) of authentication can be configured.

        Parameters:
        accountId - id of yookassa shop/account
        secretKey - secret key of yookassa shop/account
        Returns:
        builder itself
        Throws:
        java.lang.IllegalArgumentException - if OAuth token not null
      • configureOAuth

        public ApiClientBuilder configureOAuth​(java.lang.String authToken)
        Authentication configuration via OAuth method.

        Only one method (Basic/OAuth) of authentication can be configured.

        Parameters:
        authToken - OAuth client token
        Returns:
        builder itself
        Throws:
        java.lang.IllegalArgumentException - if accountId or secretKey not null
      • build

        public ApiClient build()
        Created ApiClient instance.

        Construct authentication header value supplier based on configured authentication method.

        Returns:
        instance of ApiClient
        Throws:
        java.lang.IllegalArgumentException - if authentication not configured