Class: AllPlayers::RateLimit
- Inherits:
-
Object
- Object
- AllPlayers::RateLimit
- Defined in:
- lib/allplayers/rate_limit.rb
Instance Attribute Summary collapse
-
#attrs ⇒ Object
(also: #to_hash)
readonly
Returns the value of attribute attrs.
Instance Method Summary collapse
- #initialize(attrs = {}) ⇒ Twitter::RateLimit constructor
- #limit ⇒ Integer
- #remaining ⇒ Integer
- #reset_at ⇒ Time
- #reset_in ⇒ Integer (also: #retry_after)
-
#update(attrs) ⇒ Twitter::RateLimit
Update the attributes of a RateLimit.
Constructor Details
#initialize(attrs = {}) ⇒ Twitter::RateLimit
7 8 9 |
# File 'lib/allplayers/rate_limit.rb', line 7 def initialize(attrs={}) @attrs = attrs end |
Instance Attribute Details
#attrs ⇒ Object (readonly) Also known as: to_hash
Returns the value of attribute attrs.
3 4 5 |
# File 'lib/allplayers/rate_limit.rb', line 3 def attrs @attrs end |
Instance Method Details
#limit ⇒ Integer
12 13 14 15 |
# File 'lib/allplayers/rate_limit.rb', line 12 def limit limit = @attrs['x-rate-limit-limit'] limit.to_i if limit end |
#remaining ⇒ Integer
18 19 20 21 |
# File 'lib/allplayers/rate_limit.rb', line 18 def remaining remaining = @attrs['x-rate-limit-remaining'] remaining.to_i if remaining end |
#reset_at ⇒ Time
24 25 26 27 |
# File 'lib/allplayers/rate_limit.rb', line 24 def reset_at reset = @attrs['x-rate-limit-reset'] Time.at(reset.to_i) if reset end |
#reset_in ⇒ Integer Also known as: retry_after
30 31 32 |
# File 'lib/allplayers/rate_limit.rb', line 30 def reset_in [(reset_at - Time.now).ceil, 0].max if reset_at end |
#update(attrs) ⇒ Twitter::RateLimit
Update the attributes of a RateLimit
39 40 41 42 |
# File 'lib/allplayers/rate_limit.rb', line 39 def update(attrs) @attrs.update(attrs) self end |