currency-rate 1.6.1 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. metadata +8 -121
  3. data/.document +0 -5
  4. data/.gitignore +0 -20
  5. data/.rspec +0 -1
  6. data/Gemfile +0 -6
  7. data/Gemfile.lock +0 -68
  8. data/LICENSE.txt +0 -20
  9. data/README.md +0 -73
  10. data/Rakefile +0 -43
  11. data/api_keys.yml.sample +0 -4
  12. data/currency-rate.gemspec +0 -41
  13. data/lib/adapter.rb +0 -71
  14. data/lib/adapters/crypto/binance_adapter.rb +0 -42
  15. data/lib/adapters/crypto/bitfinex_adapter.rb +0 -40
  16. data/lib/adapters/crypto/bitpay_adapter.rb +0 -29
  17. data/lib/adapters/crypto/bitstamp_adapter.rb +0 -26
  18. data/lib/adapters/crypto/btc_china_adapter.rb +0 -11
  19. data/lib/adapters/crypto/btc_e_adapter.rb +0 -18
  20. data/lib/adapters/crypto/coin_market_cap_adapter.rb +0 -31
  21. data/lib/adapters/crypto/coinbase_adapter.rb +0 -30
  22. data/lib/adapters/crypto/exmo_adapter.rb +0 -27
  23. data/lib/adapters/crypto/huobi_adapter.rb +0 -17
  24. data/lib/adapters/crypto/kraken_adapter.rb +0 -46
  25. data/lib/adapters/crypto/localbitcoins_adapter.rb +0 -25
  26. data/lib/adapters/crypto/okcoin_adapter.rb +0 -19
  27. data/lib/adapters/crypto/paxful_adapter.rb +0 -18
  28. data/lib/adapters/crypto/yadio_adapter.rb +0 -19
  29. data/lib/adapters/fiat/bonbast_adapter.rb +0 -25
  30. data/lib/adapters/fiat/coinmonitor_adapter.rb +0 -14
  31. data/lib/adapters/fiat/currency_layer_adapter.rb +0 -32
  32. data/lib/adapters/fiat/fixer_adapter.rb +0 -18
  33. data/lib/adapters/fiat/forge_adapter.rb +0 -25
  34. data/lib/adapters/fiat/free_forex_adapter.rb +0 -32
  35. data/lib/adapters/fiat/yahoo_adapter.rb +0 -35
  36. data/lib/configuration.rb +0 -29
  37. data/lib/currency_rate.rb +0 -84
  38. data/lib/currency_rate/version.rb +0 -3
  39. data/lib/fetcher.rb +0 -78
  40. data/lib/storage/file_storage.rb +0 -29
  41. data/lib/storage/serializers/yaml_serializer.rb +0 -15
  42. data/lib/synchronizer.rb +0 -51
@@ -1,15 +0,0 @@
1
- require "yaml"
2
-
3
- module CurrencyRate
4
- module Storage
5
- class YAMLSerializer
6
- def serialize(data)
7
- YAML.dump(data)
8
- end
9
-
10
- def deserialize(data)
11
- YAML.load(data)
12
- end
13
- end
14
- end
15
- end
data/lib/synchronizer.rb DELETED
@@ -1,51 +0,0 @@
1
- module CurrencyRate
2
- class Synchronizer
3
- attr_accessor :storage
4
-
5
- def initialize(storage: nil)
6
- @storage = storage || FileStorage.new
7
- end
8
-
9
- def sync_fiat!
10
- _sync CurrencyRate.configuration.fiat_adapters
11
- end
12
-
13
- def sync_crypto!
14
- _sync CurrencyRate.configuration.crypto_adapters
15
- end
16
-
17
- def sync!
18
- fiat = sync_fiat!
19
- crypto = sync_crypto!
20
- [fiat[0] | crypto[0], fiat[1] | crypto[1]]
21
- end
22
-
23
- private
24
-
25
- def _sync(adapters)
26
- successfull = []
27
- failed = []
28
- adapters.each do |provider|
29
- adapter_name = "#{provider}Adapter"
30
- begin
31
- adapter = CurrencyRate::const_get(adapter_name).instance
32
- rates = adapter.fetch_rates
33
- unless rates
34
- CurrencyRate.logger.warn("Synchronizer#sync!: rates for #{provider} not found")
35
- failed.push(provider)
36
- next
37
- end
38
- exchange_name = provider.downcase
39
- @storage.write(exchange_name, rates)
40
- successfull.push(provider)
41
- rescue StandardError => e
42
- failed.push({ provider: e })
43
- CurrencyRate.logger.error(e)
44
- next
45
- end
46
- end
47
- [successfull, failed]
48
- end
49
-
50
- end
51
- end