module BitcoinTicker::Exchange

Public Instance Methods

ticker(bitcurrency, currency) click to toggle source
# File lib/bitcoin_ticker/exchange.rb, line 3
def ticker(bitcurrency, currency)
  ensure_supported_bitcurrency(bitcurrency)
  ensure_supported_currency(currency)

  @bitcurrency = bitcurrency
  @currency = currency

  get_rate
end

Private Instance Methods

ensure_supported_bitcurrency(bitcurrency) click to toggle source
# File lib/bitcoin_ticker/exchange.rb, line 22
def ensure_supported_bitcurrency(bitcurrency)
  unless self::SUPPORTED_BITCURRENCIES.include?(bitcurrency)
    fail BitcoinTicker::UnsupportedBitcurrency, "#{bitcurrency} is not supported"
  end
end
ensure_supported_currency(currency) click to toggle source
# File lib/bitcoin_ticker/exchange.rb, line 28
def ensure_supported_currency(currency)
  unless self::SUPPORTED_CURRENCIES.include?(currency)
    fail BitcoinTicker::UnsupportedCurrency, "#{currency} is not supported"
  end
end
get_rate() click to toggle source
# File lib/bitcoin_ticker/exchange.rb, line 14
def get_rate
  client = BitcoinTicker::Client.new(link)

  response = client.get(ticker_endpoint)

  BitcoinTicker::Rate.new(@bitcurrency, @currency, response[:body])
end