lib/urbanairship.rb in urbanairship-1.0.0 vs lib/urbanairship.rb in urbanairship-1.0.1
- old
+ new
@@ -1,11 +1,18 @@
require 'json'
require 'net/https'
require 'time'
-require 'system_timer'
module Urbanairship
+ begin
+ require 'system_timer'
+ Timer = SystemTimer
+ rescue LoadError
+ require 'timeout'
+ Timer = Timeout
+ end
+
VALID_PUSH_PARAMS = %w(device_tokens aliases tags schedule_for exclude_tokens aps)
class << self
attr_accessor :application_key, :application_secret, :master_secret, :logger, :request_timeout
@@ -52,10 +59,10 @@
request = klass.new(path)
request.basic_auth @application_key, instance_variable_get("@#{options[:authenticate_with]}")
yield(request) if block_given?
- SystemTimer.timeout_after(request_timeout) do
+ Timer.timeout(request_timeout) do
start_time = Time.now
response = http_client.request(request)
log_request_and_response(request, response, Time.now - start_time)
response
end