Class: SDM::RateLimitMetadata
- Inherits:
-
Object
- Object
- SDM::RateLimitMetadata
- Defined in:
- lib/models/porcelain.rb
Overview
RateLimitMetadata contains information about remaining requests avaialable to the user over some timeframe.
Instance Attribute Summary collapse
-
#bucket ⇒ Object
The bucket this user/token is associated with, which may be shared between multiple users/tokens.
-
#limit ⇒ Object
How many total requests the user/token is authorized to make before being rate limited.
-
#remaining ⇒ Object
How many remaining requests out of the limit are still avaialable.
-
#reset_at ⇒ Object
The time when remaining will be reset to limit.
Instance Method Summary collapse
-
#initialize(limit: nil, remaining: nil, reset_at: nil, bucket: nil) ⇒ RateLimitMetadata
constructor
A new instance of RateLimitMetadata.
- #to_json(options = {}) ⇒ Object
Constructor Details
#initialize(limit: nil, remaining: nil, reset_at: nil, bucket: nil) ⇒ RateLimitMetadata
Returns a new instance of RateLimitMetadata.
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/models/porcelain.rb', line 89 def initialize( limit: nil, remaining: nil, reset_at: nil, bucket: nil ) if limit != nil @limit = limit end if remaining != nil @remaining = remaining end if reset_at != nil @reset_at = reset_at end if bucket != nil @bucket = bucket end end |
Instance Attribute Details
#bucket ⇒ Object
The bucket this user/token is associated with, which may be shared between multiple users/tokens.
87 88 89 |
# File 'lib/models/porcelain.rb', line 87 def bucket @bucket end |
#limit ⇒ Object
How many total requests the user/token is authorized to make before being rate limited.
80 81 82 |
# File 'lib/models/porcelain.rb', line 80 def limit @limit end |
#remaining ⇒ Object
How many remaining requests out of the limit are still avaialable.
82 83 84 |
# File 'lib/models/porcelain.rb', line 82 def remaining @remaining end |
#reset_at ⇒ Object
The time when remaining will be reset to limit.
84 85 86 |
# File 'lib/models/porcelain.rb', line 84 def reset_at @reset_at end |
Instance Method Details
#to_json(options = {}) ⇒ Object
109 110 111 112 113 114 115 |
# File 'lib/models/porcelain.rb', line 109 def to_json( = {}) hash = {} self.instance_variables.each do |var| hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var end hash.to_json end |