class GoogleTZAPI::Query
Public Class Methods
new(lat, lng, opts)
click to toggle source
# File lib/google_tz/query.rb, line 7 def initialize(lat, lng, opts) @lat = lat @lng = lng @timestamp = opts[:timestamp] || Time.now.to_i @sensor = opts[:sensor] || false @language = opts[:language] || "en" end
Public Instance Methods
lookup()
click to toggle source
# File lib/google_tz/query.rb, line 15 def lookup response = make_request(build_uri) Response.new(response.body) end
Private Instance Methods
build_uri()
click to toggle source
# File lib/google_tz/query.rb, line 21 def build_uri uri = URI.parse("https://maps.googleapis.com/maps/api/timezone/json") args = { :location => "#{@lat},#{@lng}", timestamp: @timestamp, sensor: @sensor, language: @language } uri.query = URI.encode_www_form(args) uri end
make_request(uri)
click to toggle source
# File lib/google_tz/query.rb, line 28 def make_request(uri) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(uri.request_uri) response = http.request(request) response end