Class: MapQuest
- Inherits:
-
Object
- Object
- MapQuest
- Defined in:
- lib/mapquest.rb,
lib/mapquest/request.rb,
lib/mapquest/version.rb,
lib/mapquest/response.rb,
lib/mapquest/services/core.rb,
lib/mapquest/services/geocoding.rb,
lib/mapquest/services/directions.rb
Defined Under Namespace
Modules: Services Classes: Request, Response
Constant Summary collapse
- VERSION =
"0.0.2"
Instance Attribute Summary collapse
-
#api_key ⇒ Object
Returns the value of attribute api_key.
Instance Method Summary collapse
-
#directions ⇒ Object
Access the directions API.
-
#geocoding ⇒ Object
Acess the geocoding API.
-
#initialize(key) ⇒ MapQuest
constructor
A new instance of MapQuest.
-
#request(method, params, response) ⇒ Object
Request handler for the web services.
Constructor Details
#initialize(key) ⇒ MapQuest
Returns a new instance of MapQuest.
13 14 15 |
# File 'lib/mapquest.rb', line 13 def initialize(key) @api_key = key end |
Instance Attribute Details
#api_key ⇒ Object
Returns the value of attribute api_key.
11 12 13 |
# File 'lib/mapquest.rb', line 11 def api_key @api_key end |
Instance Method Details
#directions ⇒ Object
Access the directions API
23 24 25 |
# File 'lib/mapquest.rb', line 23 def directions Services::Directions.new self end |
#geocoding ⇒ Object
Acess the geocoding API
18 19 20 |
# File 'lib/mapquest.rb', line 18 def geocoding Services::Geocoding.new self end |
#request(method, params, response) ⇒ Object
Request handler for the web services. Creates a new request based on the API method provided, and returns a new response object. Removes any empty parameters that were provided. This method is only used internally.
Required parameters
-
method [Hash] The hash containing the API method, version and type.
-
params [Hash] The parameters used for creating the query string
-
response [Response] The response object of the API being called
33 34 35 36 37 38 |
# File 'lib/mapquest.rb', line 33 def request(method, params, response) req = Request.new method params.merge! :key => api_key params.each { |k,v| params.delete(k) if v.nil? } response.new req.query(params), params end |