# 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