euro_currency_conversion_rate 0.0.0
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.
- checksums.yaml +7 -0
- data/lib/euro_currency_conversion_rate.rb +30 -0
- metadata +73 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 3d7ff0dd2c0209a0cdf60a25c4fe2f2290290949
|
4
|
+
data.tar.gz: 199639af018241817b986a80ce83da7eca528af3
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: cad0023434d6dcff557fbc5ffd0faa3492155b5537e1ec8524ba013f5e4cd9f4924e6a855e0cb947a95174133bd53b4a4a409544afff56003e061e1d182e1e71
|
7
|
+
data.tar.gz: 511a231a48aec81b80a6c58f1ccf47ec1c5334b2eade81de61047d83f852cc7725e5ad732f6ece838683a99e968b64b2d435446f442653ac252421fdca0bb133
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'httparty'
|
2
|
+
|
3
|
+
class EuroCurrencyConversionRate
|
4
|
+
|
5
|
+
API_URL = 'http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml'
|
6
|
+
|
7
|
+
class << self
|
8
|
+
|
9
|
+
def exchange_rate(currency)
|
10
|
+
currency_exchange_rate = currency_exchange_array.detect{ |ca| ca['currency'] == currency.upcase }
|
11
|
+
currency_exchange_rate['rate'].to_f unless currency_exchange_rate.nil?
|
12
|
+
end
|
13
|
+
|
14
|
+
private
|
15
|
+
|
16
|
+
def currency_exchange_array
|
17
|
+
xml = raw_xml_response
|
18
|
+
xml.parsed_response['Envelope']['Cube']['Cube']['Cube']
|
19
|
+
end
|
20
|
+
|
21
|
+
def raw_xml_response
|
22
|
+
xml = HTTParty.get(API_URL)
|
23
|
+
if xml.response.code == '200'
|
24
|
+
xml
|
25
|
+
else
|
26
|
+
fail("could not retrieve xml response. Got error code #{xml.response.code}")
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
metadata
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: euro_currency_conversion_rate
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Gaurav Singha Roy
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-05-25 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rspec
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: httparty
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
description: A simple service which returns the current exchange rate of a currency
|
42
|
+
w.r.t. euro
|
43
|
+
email: neogauravsvnit@gmail.com
|
44
|
+
executables: []
|
45
|
+
extensions: []
|
46
|
+
extra_rdoc_files: []
|
47
|
+
files:
|
48
|
+
- lib/euro_currency_conversion_rate.rb
|
49
|
+
homepage: https://github.com/gsingharoy/euro_currency_conversion_rate
|
50
|
+
licenses:
|
51
|
+
- MIT
|
52
|
+
metadata: {}
|
53
|
+
post_install_message:
|
54
|
+
rdoc_options: []
|
55
|
+
require_paths:
|
56
|
+
- lib
|
57
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - ">="
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '0'
|
67
|
+
requirements: []
|
68
|
+
rubyforge_project:
|
69
|
+
rubygems_version: 2.4.3
|
70
|
+
signing_key:
|
71
|
+
specification_version: 4
|
72
|
+
summary: Euro Currency Conversion rate service
|
73
|
+
test_files: []
|