currency 0.4.4 → 0.4.5
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE.txt +4 -1
- data/Releases.txt +9 -0
- data/examples/ex1.rb +1 -1
- data/examples/xe1.rb +1 -1
- data/lib/currency/config.rb +9 -0
- data/lib/currency/currency_version.rb +1 -1
- data/lib/currency/exchange/rate/source/historical.rb +1 -1
- data/lib/currency/exchange/rate/source/historical/rate.rb +3 -3
- data/lib/currency/exchange/rate/source/provider.rb +3 -0
- data/lib/currency/exchange/rate/source/the_financials.rb +5 -4
- data/lib/currency/formatter.rb +1 -1
- metadata +2 -2
data/LICENSE.txt
CHANGED
@@ -1,4 +1,7 @@
|
|
1
|
-
This software distribution is
|
1
|
+
This software distribution is Copyright (c) 2006-2007
|
2
|
+
by Kurt Stephens <ruby-currency(at)umleta.com>.
|
3
|
+
|
4
|
+
THERE IS ABSOLUTELY NO WARRANTY: SEE COPYING.txt
|
2
5
|
|
3
6
|
==================================================================
|
4
7
|
|
data/Releases.txt
CHANGED
@@ -1,11 +1,20 @@
|
|
1
1
|
= Currency Release History
|
2
2
|
|
3
|
+
== Release 0.4.5: 2007/05/29
|
4
|
+
|
5
|
+
* Historical::Rate table name can be configured in Currency::Config.current.historical_table_name
|
6
|
+
* Fixed Rate::Source::TheFinancials.
|
7
|
+
* Examples: use Currency.Money(), not Currency::Money.new().
|
8
|
+
|
3
9
|
== Release 0.4.4: 2007/04/01
|
4
10
|
|
11
|
+
MAY NOT BE BACKWARDS-COMPATIBLE
|
12
|
+
|
5
13
|
* Fixed TimedCache.
|
6
14
|
* Updated documentation.
|
7
15
|
* Added support for Parser#time = :now.
|
8
16
|
* Added support for Time in Formatter and Parser using Time#xmlschema.
|
17
|
+
* Money#inspect now appends Money#time, if set.
|
9
18
|
|
10
19
|
== Release 0.4.3: 2007/04/01
|
11
20
|
|
data/examples/ex1.rb
CHANGED
data/examples/xe1.rb
CHANGED
data/lib/currency/config.rb
CHANGED
@@ -78,5 +78,14 @@ class Currency::Config
|
|
78
78
|
def float_ref_filter=(x)
|
79
79
|
@float_ref_filter = x
|
80
80
|
end
|
81
|
+
|
82
|
+
|
83
|
+
# Defines the table name for Historical::Rate records.
|
84
|
+
# Defaults to 'currency_historical_rates'.
|
85
|
+
attr_accessor :historical_table_name
|
86
|
+
def historical_table_name
|
87
|
+
@historical_table_name ||= 'currency_historical_rates'
|
88
|
+
end
|
89
|
+
|
81
90
|
end # module
|
82
91
|
|
@@ -5,7 +5,7 @@ require 'currency/exchange/rate/source/base'
|
|
5
5
|
|
6
6
|
# Gets historical rates from database using Active::Record.
|
7
7
|
# Rates are retrieved using Currency::Exchange::Rate::Source::Historical::Rate as
|
8
|
-
# a database proxy.
|
8
|
+
# a database record proxy.
|
9
9
|
#
|
10
10
|
# See Currency::Exchange::Rate::Source::Historical::Writer for a rate archiver.
|
11
11
|
#
|
@@ -6,12 +6,12 @@ require 'currency/exchange/rate/source/historical'
|
|
6
6
|
# It requires ActiveRecord.
|
7
7
|
#
|
8
8
|
class Currency::Exchange::Rate::Source::Historical::Rate < ::ActiveRecord::Base
|
9
|
-
|
10
|
-
set_table_name
|
9
|
+
@@_table_name ||= Currency::Config.current.historical_table_name
|
10
|
+
set_table_name @@_table_name
|
11
11
|
|
12
12
|
# Can create a table and indices for this class
|
13
13
|
# when passed a Migration.
|
14
|
-
def self.__create_table(m, table_name =
|
14
|
+
def self.__create_table(m, table_name = @@_table_name)
|
15
15
|
table_name = table_name.intern
|
16
16
|
m.instance_eval do
|
17
17
|
create_table table_name do |t|
|
@@ -14,6 +14,9 @@ class Currency::Exchange::Rate::Source::Provider < Currency::Exchange::Rate::Sou
|
|
14
14
|
# The URI used to access the rate source.
|
15
15
|
attr_accessor :uri
|
16
16
|
|
17
|
+
# The URI path relative to uri used to access the rate source.
|
18
|
+
attr_accessor :uri_path
|
19
|
+
|
17
20
|
# The Time used to query the rate source.
|
18
21
|
# Typically set by #load_rates.
|
19
22
|
attr_accessor :date
|
@@ -17,9 +17,10 @@ class Currency::Exchange::Rate::Source::TheFinancials < ::Currency::Exchange::Ra
|
|
17
17
|
PIVOT_CURRENCY = :USD
|
18
18
|
|
19
19
|
def initialize(*opt)
|
20
|
-
self.uri = 'http://www.thefinancials.com/XXXXXXX'
|
21
20
|
@raw_rates = nil
|
21
|
+
self.uri_path = 'syndicated/UNKNOWN/fxrates.xml'
|
22
22
|
super(*opt)
|
23
|
+
self.uri = "http://www.thefinancials.com/#{self.uri_path}"
|
23
24
|
end
|
24
25
|
|
25
26
|
|
@@ -29,9 +30,9 @@ class Currency::Exchange::Rate::Source::TheFinancials < ::Currency::Exchange::Ra
|
|
29
30
|
end
|
30
31
|
|
31
32
|
|
32
|
-
def get_page_content
|
33
|
-
test_content
|
34
|
-
end
|
33
|
+
# def get_page_content
|
34
|
+
# test_content
|
35
|
+
# end
|
35
36
|
|
36
37
|
|
37
38
|
def clear_rates
|
data/lib/currency/formatter.rb
CHANGED
@@ -242,7 +242,7 @@ class Currency::Formatter
|
|
242
242
|
tmpl.code = @code ? _format_Currency(currency) : nil
|
243
243
|
|
244
244
|
# Add time.
|
245
|
-
tmpl.time = @time
|
245
|
+
tmpl.time = @time && time ? _format_Time(time) : nil
|
246
246
|
|
247
247
|
# Ask template to format the components.
|
248
248
|
tmpl.format
|
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
|
|
3
3
|
specification_version: 1
|
4
4
|
name: currency
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.4.
|
7
|
-
date: 2007-
|
6
|
+
version: 0.4.5
|
7
|
+
date: 2007-05-29 00:00:00 -04:00
|
8
8
|
summary: "Currency models currencies, monetary values, foreign exchanges rates. Pulls live and historical rates from http://xe.com/, http://newyorkfed.org/, http://thefinancials.com/. Can store/retrieve historical rate data from database using ActiveRecord. Can store/retrieve Money values using ActiveRecord. For more details, see: http://rubyforge.org/projects/currency/ http://currency.rubyforge.org/ http://currency.rubyforge.org/files/README_txt.html"
|
9
9
|
require_paths:
|
10
10
|
- lib
|