class Uber::RateLimit

Attributes

attrs[R]

Public Class Methods

new(attrs = {}) click to toggle source
# File lib/uber/rate_limit.rb, line 6
def initialize(attrs = {})
  return if attrs.nil? || attrs.empty?
  @attrs = attrs
end

Public Instance Methods

limit() click to toggle source

@return [Integer]

# File lib/uber/rate_limit.rb, line 12
def limit
  limit = @attrs["x-rate-limit-limit"]
  limit.to_i if limit
end
remaining() click to toggle source

@return [Integer]

# File lib/uber/rate_limit.rb, line 18
def remaining
  remaining = @attrs["x-rate-limit-remaining"]
  remaining.to_i if remaining
end
reset_at() click to toggle source

@return [Time]

# File lib/uber/rate_limit.rb, line 24
def reset_at
  reset = @attrs["x-rate-limit-reset"]
  ::Time.at(reset.to_i) if reset
end
reset_in() click to toggle source

@return [Integer]

# File lib/uber/rate_limit.rb, line 30
def reset_in
  [(reset_at - ::Time.now).ceil, 0].max if reset_at
end