Class: Marinetraffic::API
- Inherits:
-
Object
- Object
- Marinetraffic::API
- Defined in:
- lib/marinetraffic/api.rb
Class Method Summary collapse
Class Method Details
.call(name, params = {}) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/marinetraffic/api.rb', line 8 def self.call(name, params = {}) params[:protocol] = :xml param_string = params.map{|attr| "#{attr.first}:#{attr.last}"}.join('/') url = "#{API_URL}/#{name}/#{Marinetraffic.api_key}/#{param_string}" response = Faraday.get(url) doc = Nokogiri::XML(response.body) raise_exception(doc) if doc.xpath('//ERROR').any? doc end |
.raise_exception(doc) ⇒ Object
18 19 20 21 |
# File 'lib/marinetraffic/api.rb', line 18 def self.raise_exception(doc) = doc.xpath("//ERROR")[0]['DESCRIPTION'] raise MarinetrafficException.new() end |