class UkPostcodesIo::Lookup

Constants

API_URL

Attributes

postcode[R]

Public Class Methods

new(postcode) click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 10
def initialize(postcode)
  @postcode = postcode
end

Public Instance Methods

body() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 30
def body
  @body ||= JSON.parse response.body
end
data() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 14
def data
  @data ||= OpenStruct.new(body['result']) if body['result']
end
error() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 22
def error
  body['error']
end
response() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 34
def response
  @response ||= Net::HTTP.get_response(uri)
end
status() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 18
def status
  body['status']
end
success?() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 26
def success?
  response.kind_of?(Net::HTTPSuccess) && status == 200
end
uri() click to toggle source
# File lib/uk_postcodes_io/lookup.rb, line 38
def uri
  URI(File.join API_URL, URI.escape(postcode))
end