Class: GeoMagic::GeoAdapter
- Inherits:
-
Object
- Object
- GeoMagic::GeoAdapter
- Defined in:
- lib/geo_magic/geocode/geo_adapter.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#environment ⇒ Object
Returns the value of attribute environment.
-
#service_name ⇒ Object
Returns the value of attribute service_name.
Instance Method Summary collapse
- #get_key(service_name) ⇒ Object
- #get_service(services) ⇒ Object
-
#initialize(services = :google, env = :default) ⇒ GeoAdapter
constructor
A new instance of GeoAdapter.
- #setup(env) ⇒ Object
Constructor Details
#initialize(services = :google, env = :default) ⇒ GeoAdapter
Returns a new instance of GeoAdapter.
5 6 7 8 9 |
# File 'lib/geo_magic/geocode/geo_adapter.rb', line 5 def initialize services = :google, env = :default setup(env) @service_name = get_service(services) @environment = env end |
Instance Attribute Details
#environment ⇒ Object
Returns the value of attribute environment.
3 4 5 |
# File 'lib/geo_magic/geocode/geo_adapter.rb', line 3 def environment @environment end |
#service_name ⇒ Object
Returns the value of attribute service_name.
3 4 5 |
# File 'lib/geo_magic/geocode/geo_adapter.rb', line 3 def service_name @service_name end |
Instance Method Details
#get_key(service_name) ⇒ Object
22 23 24 25 26 |
# File 'lib/geo_magic/geocode/geo_adapter.rb', line 22 def get_key service_name method = "#{service_name}_key" raise ArgumentError, "Invalid map service: #{service_name}, must be one of #{GeoMagic::ServiceAdapter.services_available}" if !respond_to? method send method end |
#get_service(services) ⇒ Object
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/geo_magic/geocode/geo_adapter.rb', line 11 def get_service services case services when String, Symbol services when Array services.first else raise ArgumentError, "service argument is not valid: #{services.inspect}" end end |
#setup(env) ⇒ Object
28 29 30 31 32 33 34 35 36 |
# File 'lib/geo_magic/geocode/geo_adapter.rb', line 28 def setup env case env when :rails require 'rails/config' self.class.send(:include, RailsServiceAdapter) else self.class.send(:include, ServiceAdapter) end end |