redis-bank 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/lib/redis-bank.rb +6 -4
  2. metadata +5 -5
data/lib/redis-bank.rb CHANGED
@@ -5,6 +5,8 @@ class Money
5
5
  # Thrown when an unknown rate format is requested.
6
6
  class UnknownRateFormat < StandardError; end
7
7
 
8
+ KEY='redis_bank_exchange_rates'
9
+
8
10
  # Class for aiding in exchanging money between different currencies. By
9
11
  # default, the +Money+ class uses an object of this class (accessible
10
12
  # through +Money#bank+) for performing currency exchanges.
@@ -31,7 +33,7 @@ class Money
31
33
 
32
34
  # hash of exchange rates
33
35
  def rates
34
- @redis_client.mapped_mget *@redis_client.keys("exchange_rate_*")
36
+ @redis_client.hgetall KEY
35
37
  end
36
38
 
37
39
  # Exchanges the given +Money+ object to a new +Money+ object in
@@ -118,7 +120,7 @@ class Money
118
120
  # bank.set_rate("USD", "CAD", 1.24515)
119
121
  # bank.set_rate("CAD", "USD", 0.803115)
120
122
  def set_rate(from, to, rate)
121
- @redis_client[rate_key_for(from, to)] = rate
123
+ @redis_client.hset KEY, rate_key_for(from, to), rate
122
124
  end
123
125
 
124
126
  # Retrieve the rate for the given currencies. Uses +Mutex+ to synchronize
@@ -137,7 +139,7 @@ class Money
137
139
  # bank.get_rate("USD", "CAD") #=> 1.24515
138
140
  # bank.get_rate("CAD", "USD") #=> 0.803115
139
141
  def get_rate(from, to)
140
- @redis_client[rate_key_for(from, to)]
142
+ @redis_client.hget KEY, rate_key_for(from, to)
141
143
  end
142
144
 
143
145
  # Return the rate hashkey for the given currencies.
@@ -150,7 +152,7 @@ class Money
150
152
  # @example
151
153
  # rate_key_for("USD", "CAD") #=> "exchange_rate_usd_to_cad"
152
154
  def rate_key_for(from, to)
153
- "EXCHANGE_RATE_#{Currency.wrap(from).iso_code}_TO_#{Currency.wrap(to).iso_code}".downcase
155
+ "#{Currency.wrap(from).iso_code}_to_#{Currency.wrap(to).iso_code}".downcase
154
156
  end
155
157
  end
156
158
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis-bank
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 31
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 1
10
- version: 0.1.1
9
+ - 2
10
+ version: 0.1.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Cameron Walsh
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-06-19 00:00:00 Z
18
+ date: 2012-06-20 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: money
@@ -115,7 +115,7 @@ dependencies:
115
115
  version: "0"
116
116
  type: :development
117
117
  version_requirements: *id007
118
- description: Redis-backed Bank for the Money gem based on the VariableExchangeBank
118
+ description: Redis-backed Bank for the Money gem based on the VariableExchange Bank
119
119
  email: cameron.walsh@gmail.com
120
120
  executables: []
121
121