Class: Iyzi::Configuration
- Inherits:
-
Object
- Object
- Iyzi::Configuration
- Defined in:
- lib/iyzi/configuration.rb
Constant Summary collapse
- BASE_URL =
'https://api.iyzipay.com/'.freeze
- REQUIRED_CONFIG =
%i(base_url api_key secret).freeze
Instance Attribute Summary collapse
-
#api_key ⇒ Object
Returns the value of attribute api_key.
-
#base_url ⇒ Object
Returns the value of attribute base_url.
-
#secret ⇒ Object
Returns the value of attribute secret.
Instance Method Summary collapse
- #defined_params ⇒ Object
-
#initialize(options = {}) ⇒ Configuration
constructor
A new instance of Configuration.
- #missing_configs ⇒ Object
- #to_h ⇒ Object
- #valid? ⇒ Boolean
- #validate ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ Configuration
Returns a new instance of Configuration.
7 8 9 10 11 |
# File 'lib/iyzi/configuration.rb', line 7 def initialize( = {}) @base_url = [:base_url] || BASE_URL @api_key = [:api_key] @secret = [:secret] end |
Instance Attribute Details
#api_key ⇒ Object
Returns the value of attribute api_key.
5 6 7 |
# File 'lib/iyzi/configuration.rb', line 5 def api_key @api_key end |
#base_url ⇒ Object
Returns the value of attribute base_url.
5 6 7 |
# File 'lib/iyzi/configuration.rb', line 5 def base_url @base_url end |
#secret ⇒ Object
Returns the value of attribute secret.
5 6 7 |
# File 'lib/iyzi/configuration.rb', line 5 def secret @secret end |
Instance Method Details
#defined_params ⇒ Object
26 27 28 |
# File 'lib/iyzi/configuration.rb', line 26 def defined_params to_h.select { |k, v| v.present? } end |
#missing_configs ⇒ Object
22 23 24 |
# File 'lib/iyzi/configuration.rb', line 22 def missing_configs REQUIRED_CONFIG - defined_params.keys.collect(&:to_sym) end |
#to_h ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/iyzi/configuration.rb', line 30 def to_h { base_url: base_url, api_key: api_key, secret: secret } end |
#valid? ⇒ Boolean
13 14 15 |
# File 'lib/iyzi/configuration.rb', line 13 def valid? !missing_configs.present? end |
#validate ⇒ Object
17 18 19 20 |
# File 'lib/iyzi/configuration.rb', line 17 def validate return if valid? fail "Missing configuration keys: #{missing_configs.collect(&:to_s).join(', ')}" end |