currency-rate 2.0.0 → 2.0.3
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 +4 -4
- metadata +8 -119
- data/.document +0 -5
- data/.gitignore +0 -20
- data/.rspec +0 -1
- data/Gemfile +0 -6
- data/Gemfile.lock +0 -68
- data/LICENSE.txt +0 -20
- data/README.md +0 -73
- data/Rakefile +0 -43
- data/currency-rate.gemspec +0 -41
- data/lib/adapter.rb +0 -100
- data/lib/adapters/crypto/binance_adapter.rb +0 -42
- data/lib/adapters/crypto/bitfinex_adapter.rb +0 -41
- data/lib/adapters/crypto/bitpay_adapter.rb +0 -29
- data/lib/adapters/crypto/bitstamp_adapter.rb +0 -26
- data/lib/adapters/crypto/coin_market_cap_adapter.rb +0 -29
- data/lib/adapters/crypto/coinbase_adapter.rb +0 -30
- data/lib/adapters/crypto/exmo_adapter.rb +0 -27
- data/lib/adapters/crypto/hit_BTC_adapter.rb +0 -64
- data/lib/adapters/crypto/huobi_adapter.rb +0 -25
- data/lib/adapters/crypto/kraken_adapter.rb +0 -46
- data/lib/adapters/crypto/localbitcoins_adapter.rb +0 -25
- data/lib/adapters/crypto/okcoin_adapter.rb +0 -17
- data/lib/adapters/crypto/paxful_adapter.rb +0 -18
- data/lib/adapters/crypto/poloniex_adapter.rb +0 -33
- data/lib/adapters/crypto/yadio_adapter.rb +0 -19
- data/lib/adapters/fiat/bonbast_adapter.rb +0 -23
- data/lib/adapters/fiat/coinmonitor_adapter.rb +0 -13
- data/lib/adapters/fiat/currency_layer_adapter.rb +0 -31
- data/lib/adapters/fiat/fixer_adapter.rb +0 -17
- data/lib/adapters/fiat/forge_adapter.rb +0 -34
- data/lib/adapters/fiat/free_forex_adapter.rb +0 -36
- data/lib/container.rb +0 -203
- data/lib/currency_rate.rb +0 -41
- data/lib/currency_rate/version.rb +0 -3
- data/lib/exceptions.rb +0 -9
- data/lib/storage/file_storage.rb +0 -34
- data/lib/storage/serializers/yaml_serializer.rb +0 -15
- data/lib/utils/string_extensions.rb +0 -19
data/lib/currency_rate.rb
DELETED
@@ -1,41 +0,0 @@
|
|
1
|
-
require "bigdecimal"
|
2
|
-
require "logger"
|
3
|
-
require "singleton"
|
4
|
-
require "json"
|
5
|
-
require "http"
|
6
|
-
|
7
|
-
require_relative "exceptions"
|
8
|
-
require_relative "adapter"
|
9
|
-
require_relative "container"
|
10
|
-
require_relative "utils/string_extensions"
|
11
|
-
|
12
|
-
Dir["#{File.expand_path __dir__}/adapters/**/*.rb"].each { |f| require f }
|
13
|
-
Dir["#{File.expand_path __dir__}/storage/**/*.rb"].each { |f| require f }
|
14
|
-
|
15
|
-
module CurrencyRate
|
16
|
-
|
17
|
-
@@default_config = {
|
18
|
-
connect_timeout: 10,
|
19
|
-
read_timeout: 10,
|
20
|
-
logger_callbacks: {},
|
21
|
-
logger_settings: { device: $stdout, level: :info, formatter: nil },
|
22
|
-
storage_settings: { path: __dir__, serializer: CurrencyRate::Storage::YAMLSerializer }
|
23
|
-
}
|
24
|
-
|
25
|
-
class << self
|
26
|
-
|
27
|
-
def default_config
|
28
|
-
@@default_config
|
29
|
-
end
|
30
|
-
|
31
|
-
def update_default_config(config_hash)
|
32
|
-
@@default_config.merge!(config_hash)
|
33
|
-
end
|
34
|
-
|
35
|
-
def root
|
36
|
-
File.expand_path("../", File.dirname(__FILE__))
|
37
|
-
end
|
38
|
-
|
39
|
-
end
|
40
|
-
|
41
|
-
end
|
data/lib/exceptions.rb
DELETED
data/lib/storage/file_storage.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
module CurrencyRate
|
2
|
-
class FileStorage
|
3
|
-
attr_reader :path
|
4
|
-
attr_accessor :serializer
|
5
|
-
|
6
|
-
def initialize(path:, container:, serializer: nil)
|
7
|
-
@path = path
|
8
|
-
@container = container
|
9
|
-
@serializer = serializer || Storage::YAMLSerializer.new
|
10
|
-
end
|
11
|
-
|
12
|
-
def exists?(adapter_name)
|
13
|
-
File.exists? path_for(adapter_name)
|
14
|
-
end
|
15
|
-
|
16
|
-
def read(adapter_name)
|
17
|
-
path = path_for adapter_name
|
18
|
-
@serializer.deserialize File.read(path)
|
19
|
-
rescue StandardError => e
|
20
|
-
@container.log(:error, e)
|
21
|
-
nil
|
22
|
-
end
|
23
|
-
|
24
|
-
def write(adapter_name, data = "")
|
25
|
-
File.write path_for(adapter_name), @serializer.serialize(data)
|
26
|
-
rescue StandardError => e
|
27
|
-
@container.log(:error, e)
|
28
|
-
end
|
29
|
-
|
30
|
-
def path_for(adapter_name)
|
31
|
-
File.join @path, "#{adapter_name}.yml"
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
module StringExtensions
|
2
|
-
|
3
|
-
def to_snake_case
|
4
|
-
self.to_s.gsub(/::/, '/').
|
5
|
-
gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
|
6
|
-
gsub(/([a-z\d])([A-Z])/,'\1_\2').
|
7
|
-
tr("-", "_").
|
8
|
-
downcase
|
9
|
-
end
|
10
|
-
|
11
|
-
def to_camel_case
|
12
|
-
words = self.to_s.split('_')
|
13
|
-
words.map { |w| w[0].capitalize + w[1..-1] }.join
|
14
|
-
end
|
15
|
-
|
16
|
-
end
|
17
|
-
|
18
|
-
class String; include StringExtensions; end
|
19
|
-
class Symbol; include StringExtensions; end
|