Sha256: a35834ec1d8b37dca5c20f5088d028a3bf17cfad33d38efcedbb208bbbbbd0aa

Contents?: true

Size: 594 Bytes

Versions: 1

Compression:

Stored size: 594 Bytes

Contents

require 'danconia/errors/api_error'
require 'net/http'
require 'json'

module Danconia
  module Exchanges
    class CurrencyLayer < Exchange
      def initialize access_key:
        super()
        @access_key = access_key
      end

      def update_rates!
        @store.save_rates fetch_rates
      end

      def fetch_rates
        response = JSON.parse Net::HTTP.get URI "http://www.apilayer.net/api/live?access_key=#{@access_key}"
        if response['success']
          response['quotes']
        else
          raise Errors::APIError, response
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
danconia-0.2.1 lib/danconia/exchanges/currency_layer.rb