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.
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/models/porcelain.rb', line 84 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.
83 84 85 |
# File 'lib/models/porcelain.rb', line 83 def bucket @bucket end |
#limit ⇒ Object
How many total requests the user/token is authorized to make before being rate limited.
76 77 78 |
# File 'lib/models/porcelain.rb', line 76 def limit @limit end |
#remaining ⇒ Object
How many remaining requests out of the limit are still avaialable.
78 79 80 |
# File 'lib/models/porcelain.rb', line 78 def remaining @remaining end |
#reset_at ⇒ Object
The time when remaining will be reset to limit.
80 81 82 |
# File 'lib/models/porcelain.rb', line 80 def reset_at @reset_at end |
Instance Method Details
#to_json(options = {}) ⇒ Object
106 107 108 109 110 111 112 |
# File 'lib/models/porcelain.rb', line 106 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 |