# File lib/callsign.rb, line 18 def initialize(callsign) json_uri = URI.parse "http://callook.info/#{callsign}/json" json_response = Net::HTTP.new(json_uri.host, json_uri.port).get(json_uri.path) raise InvalidHTTPResponseException if json_response.code.to_i > 200 @json = JSON.parse json_response.body # Handle invalid/update before the user can do anything that # would error anyway. case @json['status'] when 'INVALID' raise InvalidCallsignException, 'Invalid callsign' when 'UPDATING' raise CallookUpdateException, 'Callook.info offline for daily update' end end