Class: Monee::Config
Overview
Singleton class that can be initiated only once to hold the configuration values
Direct Known Subclasses
Constant Summary collapse
- DEFAULT_RATE =
this is default rate, against this value other currency rates are calculated
1
Instance Attribute Summary collapse
-
#base_currency ⇒ Object
Returns the value of attribute base_currency.
-
#currency_rates ⇒ Object
Returns the value of attribute currency_rates.
Instance Method Summary collapse
-
#available_currencies ⇒ Array
retrieves all the currencies configured including the base.
-
#exists?(code) ⇒ Boolean
checks if the code exists in the config.
-
#fetch_rate(code) ⇒ Numeric
fetches the rate of a currency by code of the currency.
-
#reset ⇒ void
to reset the configuration values.
-
#set_default_rate ⇒ void
sets the default rate to the base currency as 1.
Instance Attribute Details
#base_currency ⇒ Object
Returns the value of attribute base_currency.
13 14 15 |
# File 'lib/monee/config.rb', line 13 def base_currency @base_currency end |
#currency_rates ⇒ Object
Returns the value of attribute currency_rates.
13 14 15 |
# File 'lib/monee/config.rb', line 13 def currency_rates @currency_rates end |
Instance Method Details
#available_currencies ⇒ Array
retrieves all the currencies configured including the base
41 42 43 44 |
# File 'lib/monee/config.rb', line 41 def available_currencies set_default_rate currency_rates.keys end |
#exists?(code) ⇒ Boolean
checks if the code exists in the config
34 35 36 |
# File 'lib/monee/config.rb', line 34 def exists?(code) available_currencies.include?(code) end |
#fetch_rate(code) ⇒ Numeric
fetches the rate of a currency by code of the currency
26 27 28 |
# File 'lib/monee/config.rb', line 26 def fetch_rate(code) currency_rates[code] end |
#reset ⇒ void
This method returns an undefined value.
to reset the configuration values
17 18 19 20 |
# File 'lib/monee/config.rb', line 17 def reset self.base_currency = nil self.currency_rates = nil end |
#set_default_rate ⇒ void
This method returns an undefined value.
sets the default rate to the base currency as 1
49 50 51 |
# File 'lib/monee/config.rb', line 49 def set_default_rate currency_rates[base_currency] = DEFAULT_RATE end |