Class: Cryptoexchange::Exchanges::Gdac::Services::Pairs

Inherits:
Services::Pairs show all
Defined in:
lib/cryptoexchange/exchanges/gdac/services/pairs.rb

Constant Summary collapse

PAIRS_URL =
"#{Cryptoexchange::Exchanges::Gdac::Market::API_URL}/public/marketsummaries"

Constants inherited from Services::Pairs

Services::Pairs::HTTP_METHOD, Services::Pairs::MARKET, Services::Pairs::POST_PARAMS

Instance Method Summary collapse

Methods inherited from Services::Pairs

#default_override_exist?, #default_override_path, #exchange_class, #fetch_via_api, #fetch_via_api_using_post, #fetch_via_override, #http_get, #http_post, #user_override_exist?, #user_override_path

Instance Method Details

#fetchObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/cryptoexchange/exchanges/gdac/services/pairs.rb', line 7

def fetch
  ctx = OpenSSL::SSL::SSLContext.new
  ctx.verify_mode = OpenSSL::SSL::VERIFY_NONE
  result = HTTP.get(PAIRS_URL, ssl_context: ctx)
  output = JSON.parse(result)

  market_pairs = []
  pairs = output['result'].map { |r| r["marketName"].split("-") }
  pairs.each do |pair|
    market_pairs << Cryptoexchange::Models::MarketPair.new(
                      base: pair.last,
                      target: pair.first,
                      market: Gdac::Market::NAME
                    )
  end
  market_pairs
end