Class: Cryptoexchange::Exchanges::RadarRelay::Services::Pairs

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

Constant Summary collapse

PAIRS_URL =
"#{Cryptoexchange::Exchanges::RadarRelay::Market::API_URL}/markets"

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

#adapt(output) ⇒ Object



19
20
21
22
23
24
25
26
27
28
# File 'lib/cryptoexchange/exchanges/radar_relay/services/pairs.rb', line 19

def adapt(output)
  output.map do |ticker|
    base, target = ticker['displayName'].split('/')
    Cryptoexchange::Models::MarketPair.new({
      base: base,
      target: target,
      market: RadarRelay::Market::NAME
    })
  end
end

#fetchObject



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/cryptoexchange/exchanges/radar_relay/services/pairs.rb', line 7

def fetch
  outputs = []
  (1..25).each do |page_id|
    pair_url = PAIRS_URL + "?page=#{page_id}&perPage=100"
    puts pair_url
    output = fetch_via_api(pair_url)
    break if output.empty?
    outputs = outputs + output
  end
  adapt(outputs)
end