Class: Coinbase::Configuration
- Inherits:
-
Object
- Object
- Coinbase::Configuration
- Defined in:
- lib/coinbase.rb
Overview
Configuration object for the Coinbase SDK.
Instance Attribute Summary collapse
-
#api_key_name ⇒ Object
Returns the value of attribute api_key_name.
-
#api_key_private_key ⇒ Object
Returns the value of attribute api_key_private_key.
-
#api_url ⇒ Object
Returns the value of attribute api_url.
-
#debug_api ⇒ Object
Returns the value of attribute debug_api.
-
#default_network ⇒ Object
Returns the value of attribute default_network.
-
#max_network_tries ⇒ Object
Returns the value of attribute max_network_tries.
-
#use_server_signer ⇒ Object
Returns the value of attribute use_server_signer.
Instance Method Summary collapse
-
#api_client ⇒ Coinbase::Client::ApiClient
Returns the API client.
-
#from_json(file_path = 'cdp_api_key.json') ⇒ Object
Sets configuration values based on the provided CDP API Key JSON file.
-
#initialize ⇒ Configuration
constructor
Initializes the configuration object.
Constructor Details
#initialize ⇒ Configuration
Initializes the configuration object.
77 78 79 80 81 82 83 |
# File 'lib/coinbase.rb', line 77 def initialize @api_url = 'https://api.cdp.coinbase.com' @debug_api = false @use_server_signer = false @max_network_tries = 3 @default_network = Coinbase::Network::BASE_SEPOLIA end |
Instance Attribute Details
#api_key_name ⇒ Object
Returns the value of attribute api_key_name.
74 75 76 |
# File 'lib/coinbase.rb', line 74 def api_key_name @api_key_name end |
#api_key_private_key ⇒ Object
Returns the value of attribute api_key_private_key.
74 75 76 |
# File 'lib/coinbase.rb', line 74 def api_key_private_key @api_key_private_key end |
#api_url ⇒ Object
Returns the value of attribute api_url.
74 75 76 |
# File 'lib/coinbase.rb', line 74 def api_url @api_url end |
#debug_api ⇒ Object
Returns the value of attribute debug_api.
74 75 76 |
# File 'lib/coinbase.rb', line 74 def debug_api @debug_api end |
#default_network ⇒ Object
Returns the value of attribute default_network.
85 86 87 |
# File 'lib/coinbase.rb', line 85 def default_network @default_network end |
#max_network_tries ⇒ Object
Returns the value of attribute max_network_tries.
74 75 76 |
# File 'lib/coinbase.rb', line 74 def max_network_tries @max_network_tries end |
#use_server_signer ⇒ Object
Returns the value of attribute use_server_signer.
74 75 76 |
# File 'lib/coinbase.rb', line 74 def use_server_signer @use_server_signer end |
Instance Method Details
#api_client ⇒ Coinbase::Client::ApiClient
Returns the API client.
112 113 114 |
# File 'lib/coinbase.rb', line 112 def api_client @api_client ||= Coinbase::Client::ApiClient.new(Middleware.config) end |
#from_json(file_path = 'cdp_api_key.json') ⇒ Object
Sets configuration values based on the provided CDP API Key JSON file. file in the root directory by default.
98 99 100 101 102 103 104 105 106 107 108 |
# File 'lib/coinbase.rb', line 98 def from_json(file_path = 'cdp_api_key.json') # Expand paths to respect shortcuts like ~. file_path = File.(file_path) raise InvalidConfiguration, 'Invalid configuration file type' unless file_path.end_with?('.json') file = File.read(file_path) data = JSON.parse(file) @api_key_name = data['name'] @api_key_private_key = data['privateKey'] end |