class Market

Public Class Methods

new() click to toggle source
# File lib/exchange/market.rb, line 3
def initialize
  self.refresh_all_data
end

Public Instance Methods

exchange(exchange_name) click to toggle source
# File lib/exchange/market.rb, line 11
def exchange(exchange_name)
  return self.select{ |e| e.name == exchange_name }[0]
end
exchanges(currency) click to toggle source
# File lib/exchange/market.rb, line 7
def exchanges(currency)
  return self.select{ |e| e.currency == currency }
end
refresh_all_data() click to toggle source
# File lib/exchange/market.rb, line 37
def refresh_all_data
  self.clear
  exchanges_data = self.get_summary
  exchanges_data.each do |e|
    self.push(Exchange.new(e))
  end
end
update() click to toggle source
# File lib/exchange/market.rb, line 15
def update
  exchanges_data = self.get_summary
  begin
    exchanges_data.each do |exchange_data|
      if self.select{|e| e.exchange_name == exchange_data['currency'] + exchange_data['commodity']}.empty?
        self.push(Exchange.new(exchange_data))
      else
        exchange.update(exchange_data)
      end
    end
  rescue
    puts "Error in Excoin::Market.update"
    puts exchanges_data
  end
end
update_orders() click to toggle source
# File lib/exchange/market.rb, line 31
def update_orders
  self.each do |exchange|
    exchange.orders.update
  end
end

Protected Instance Methods

get_summary() click to toggle source
# File lib/exchange/market.rb, line 46
def get_summary
  Excoin.api(@api_key).multiple_exchange_summary
end