Class: PaypalServerSdk::Client
- Inherits:
-
Object
- Object
- PaypalServerSdk::Client
- Includes:
- CoreLibrary
- Defined in:
- lib/paypal_server_sdk/client.rb
Overview
paypal_server_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
-
#initialize(connection: nil, adapter: :net_http_persistent, timeout: 60, 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::SANDBOX, client_credentials_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.
-
#o_auth_authorization ⇒ OAuthAuthorizationController
Access to o_auth_authorization controller.
-
#oauth2 ⇒ Object
Returns the configured authentication Oauth2 instance.
-
#orders ⇒ OrdersController
Access to orders controller.
-
#payments ⇒ PaymentsController
Access to payments controller.
-
#subscriptions ⇒ SubscriptionsController
Access to subscriptions controller.
-
#transaction_search ⇒ TransactionSearchController
Access to transaction_search controller.
- #user_agent_detail ⇒ Object
-
#vault ⇒ VaultController
Access to vault controller.
Constructor Details
#initialize(connection: nil, adapter: :net_http_persistent, timeout: 60, 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::SANDBOX, client_credentials_auth_credentials: nil, config: nil) ⇒ Client
Returns a new instance of Client.
57 58 59 60 61 62 63 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 |
# File 'lib/paypal_server_sdk/client.rb', line 57 def initialize( connection: nil, adapter: :net_http_persistent, timeout: 60, 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::SANDBOX, client_credentials_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, client_credentials_auth_credentials: client_credentials_auth_credentials ) else config end user_agent_params = BaseController.user_agent_parameters @global_configuration = GlobalConfiguration.new(client_configuration: @config) .base_uri_executor(@config.method(:get_base_uri)) .global_errors(BaseController::GLOBAL_ERRORS) .user_agent(BaseController.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/paypal_server_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/paypal_server_sdk/client.rb', line 10 def config @config end |
Class Method Details
.from_env(**overrides) ⇒ Object
Creates a client directly from environment variables.
103 104 105 106 107 |
# File 'lib/paypal_server_sdk/client.rb', line 103 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
#initialize_auth_managers(global_config) ⇒ Object
Initializes the auth managers hash used for authenticating API calls.
94 95 96 97 98 99 100 |
# File 'lib/paypal_server_sdk/client.rb', line 94 def initialize_auth_managers(global_config) @auth_managers = {} http_client_config = global_config.client_configuration %w[Oauth2].each { |auth| @auth_managers[auth] = nil } @auth_managers['Oauth2'] = OAuth2.new(http_client_config.client_credentials_auth_credentials, global_config) end |
#o_auth_authorization ⇒ OAuthAuthorizationController
Access to o_auth_authorization controller.
53 54 55 |
# File 'lib/paypal_server_sdk/client.rb', line 53 def ||= OAuthAuthorizationController.new @global_configuration end |
#oauth2 ⇒ Object
Returns the configured authentication Oauth2 instance.
17 18 19 |
# File 'lib/paypal_server_sdk/client.rb', line 17 def oauth2 @auth_managers['Oauth2'] end |
#orders ⇒ OrdersController
Access to orders controller.
23 24 25 |
# File 'lib/paypal_server_sdk/client.rb', line 23 def orders @orders ||= OrdersController.new @global_configuration end |
#payments ⇒ PaymentsController
Access to payments controller.
29 30 31 |
# File 'lib/paypal_server_sdk/client.rb', line 29 def payments @payments ||= PaymentsController.new @global_configuration end |
#subscriptions ⇒ SubscriptionsController
Access to subscriptions controller.
47 48 49 |
# File 'lib/paypal_server_sdk/client.rb', line 47 def subscriptions @subscriptions ||= SubscriptionsController.new @global_configuration end |
#transaction_search ⇒ TransactionSearchController
Access to transaction_search controller.
41 42 43 |
# File 'lib/paypal_server_sdk/client.rb', line 41 def transaction_search @transaction_search ||= TransactionSearchController.new @global_configuration end |
#user_agent_detail ⇒ Object
12 13 14 |
# File 'lib/paypal_server_sdk/client.rb', line 12 def user_agent_detail config.user_agent_detail end |
#vault ⇒ VaultController
Access to vault controller.
35 36 37 |
# File 'lib/paypal_server_sdk/client.rb', line 35 def vault @vault ||= VaultController.new @global_configuration end |