class AddressGeocoder::Requester

@abstract Abstract base class for making requests to maps APIs

Attributes

address[W]

@!attribute [w] address @return [Hash] the address to use in the request

api_key[W]

@!attribute [w] api_key @return [Hash] the api_key to use in the request

language[W]

@!attribute [w] language @return [Hash] the language to return the request in

parser[W]

@!attribute [w] parser @return [Parser] a class instance

result[R]

@!attribute [r] result @return [Hash] the result of a request to a maps API

Public Class Methods

new(args = {}) click to toggle source
# File lib/address_geocoder/requester.rb, line 23
def initialize(args = {})
  @parser = args[:parser]
end

Public Instance Methods

array_result() click to toggle source

@abstract Abstract base method for returning a compacted, flattened array

of different address responses.

@return [Array<Hash>] a collection of possible addresses

# File lib/address_geocoder/requester.rb, line 43
def array_result
  [@result['results']].flatten
end
connection_error(msg) click to toggle source

Raise a connection error

# File lib/address_geocoder/requester.rb, line 48
def connection_error(msg)
  raise ConnectionError, msg
end
make_call() click to toggle source

@abstract Abstract base method for initiating a call to a maps API @return [void]

# File lib/address_geocoder/requester.rb, line 29
def make_call
  raise NeedToOveride, 'make_call'
end
success?() click to toggle source

@abstract Abstract base method for checking if a call to a maps API

suceeded

@return [Boolean] true, or false if the request failed.

# File lib/address_geocoder/requester.rb, line 36
def success?
  raise NeedToOveride, 'success?'
end