Class: UnivapayClientSdk::Client
- Inherits:
-
Object
- Object
- UnivapayClientSdk::Client
- Includes:
- CoreLibrary
- Defined in:
- lib/univapay_client_sdk/client.rb
Overview
univapay_client_sdk client class.
Instance Attribute Summary collapse
-
#auth_managers ⇒ Object
readonly
Returns the value of attribute auth_managers.
-
#config ⇒ Object
readonly
Returns the value of attribute config.
Class Method Summary collapse
-
.from_env(**overrides) ⇒ Object
Creates a client directly from environment variables.
Instance Method Summary collapse
-
#cancels ⇒ CancelsApi
Access to cancels controller.
-
#charges ⇒ ChargesApi
Access to charges controller.
-
#initialize(connection: nil, adapter: :net_http_persistent, timeout: 30, max_retries: 0, retry_interval: 1, backoff_factor: 2, retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], retry_methods: %i[get put],, http_callback: nil, proxy_settings: nil, logging_configuration: nil, environment: Environment::PRODUCTION, base_url: 'https://api.univapay.com', bearer_auth_credentials: nil, config: nil) ⇒ Client
constructor
A new instance of Client.
-
#initialize_auth_managers(global_config) ⇒ Object
Initializes the auth managers hash used for authenticating API calls.
-
#merchants ⇒ MerchantsApi
Access to merchants controller.
-
#refunds ⇒ RefundsApi
Access to refunds controller.
-
#stores ⇒ StoresApi
Access to stores controller.
-
#subscriptions ⇒ SubscriptionsApi
Access to subscriptions controller.
-
#transaction_tokens ⇒ TransactionTokensApi
Access to transaction_tokens controller.
- #user_agent_detail ⇒ Object
-
#webhooks ⇒ WebhooksApi
Access to webhooks controller.
Constructor Details
#initialize(connection: nil, adapter: :net_http_persistent, timeout: 30, max_retries: 0, retry_interval: 1, backoff_factor: 2, retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], retry_methods: %i[get put],, http_callback: nil, proxy_settings: nil, logging_configuration: nil, environment: Environment::PRODUCTION, base_url: 'https://api.univapay.com', bearer_auth_credentials: nil, config: nil) ⇒ Client
Returns a new instance of Client.
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/univapay_client_sdk/client.rb', line 64 def initialize( connection: nil, adapter: :net_http_persistent, timeout: 30, max_retries: 0, retry_interval: 1, backoff_factor: 2, retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524], retry_methods: %i[get put], http_callback: nil, proxy_settings: nil, logging_configuration: nil, environment: Environment::PRODUCTION, base_url: 'https://api.univapay.com', bearer_auth_credentials: nil, config: nil ) @config = if config.nil? Configuration.new( connection: connection, adapter: adapter, timeout: timeout, max_retries: max_retries, retry_interval: retry_interval, backoff_factor: backoff_factor, retry_statuses: retry_statuses, retry_methods: retry_methods, http_callback: http_callback, proxy_settings: proxy_settings, logging_configuration: logging_configuration, environment: environment, base_url: base_url, bearer_auth_credentials: bearer_auth_credentials ) else config end user_agent_params = BaseApi.user_agent_parameters @global_configuration = GlobalConfiguration.new(client_configuration: @config) .base_uri_executor(@config.method(:get_base_uri)) .global_errors(BaseApi::GLOBAL_ERRORS) .user_agent(BaseApi.user_agent, agent_parameters: user_agent_params) initialize_auth_managers(@global_configuration) @global_configuration = @global_configuration.auth_managers(@auth_managers) end |
Instance Attribute Details
#auth_managers ⇒ Object (readonly)
Returns the value of attribute auth_managers.
10 11 12 |
# File 'lib/univapay_client_sdk/client.rb', line 10 def auth_managers @auth_managers end |
#config ⇒ Object (readonly)
Returns the value of attribute config.
10 11 12 |
# File 'lib/univapay_client_sdk/client.rb', line 10 def config @config end |
Class Method Details
.from_env(**overrides) ⇒ Object
Creates a client directly from environment variables.
110 111 112 113 114 |
# File 'lib/univapay_client_sdk/client.rb', line 110 def self.from_env(**overrides) default_config = Configuration.build_default_config_from_env new_config = default_config.clone_with(**overrides) new(config: new_config) end |
Instance Method Details
#cancels ⇒ CancelsApi
Access to cancels controller.
42 43 44 |
# File 'lib/univapay_client_sdk/client.rb', line 42 def cancels @cancels ||= CancelsApi.new @global_configuration end |
#charges ⇒ ChargesApi
Access to charges controller.
18 19 20 |
# File 'lib/univapay_client_sdk/client.rb', line 18 def charges @charges ||= ChargesApi.new @global_configuration end |
#initialize_auth_managers(global_config) ⇒ Object
Initializes the auth managers hash used for authenticating API calls.
102 103 104 105 106 107 |
# File 'lib/univapay_client_sdk/client.rb', line 102 def initialize_auth_managers(global_config) @auth_managers = {} http_client_config = global_config.client_configuration %w[JWT_TOKEN].each { |auth| @auth_managers[auth] = nil } @auth_managers['JWT_TOKEN'] = Oauth2.new(http_client_config.bearer_auth_credentials) end |
#merchants ⇒ MerchantsApi
Access to merchants controller.
48 49 50 |
# File 'lib/univapay_client_sdk/client.rb', line 48 def merchants @merchants ||= MerchantsApi.new @global_configuration end |
#refunds ⇒ RefundsApi
Access to refunds controller.
30 31 32 |
# File 'lib/univapay_client_sdk/client.rb', line 30 def refunds @refunds ||= RefundsApi.new @global_configuration end |
#stores ⇒ StoresApi
Access to stores controller.
54 55 56 |
# File 'lib/univapay_client_sdk/client.rb', line 54 def stores @stores ||= StoresApi.new @global_configuration end |
#subscriptions ⇒ SubscriptionsApi
Access to subscriptions controller.
36 37 38 |
# File 'lib/univapay_client_sdk/client.rb', line 36 def subscriptions @subscriptions ||= SubscriptionsApi.new @global_configuration end |
#transaction_tokens ⇒ TransactionTokensApi
Access to transaction_tokens controller.
24 25 26 |
# File 'lib/univapay_client_sdk/client.rb', line 24 def transaction_tokens @transaction_tokens ||= TransactionTokensApi.new @global_configuration end |
#user_agent_detail ⇒ Object
12 13 14 |
# File 'lib/univapay_client_sdk/client.rb', line 12 def user_agent_detail config.user_agent_detail end |
#webhooks ⇒ WebhooksApi
Access to webhooks controller.
60 61 62 |
# File 'lib/univapay_client_sdk/client.rb', line 60 def webhooks @webhooks ||= WebhooksApi.new @global_configuration end |