Class: Termtter::RubytterProxy::LimitManager

Inherits:
Object
  • Object
show all
Defined in:
lib/termtter/rubytter_proxy.rb

Instance Method Summary collapse

Constructor Details

#initialize(rubytter) ⇒ LimitManager

Returns a new instance of LimitManager.



182
183
184
185
186
# File 'lib/termtter/rubytter_proxy.rb', line 182

def initialize(rubytter)
  @rubytter = rubytter
  @limit = nil
  @count = 0
end

Instance Method Details

#getObject



188
189
190
191
192
193
194
195
# File 'lib/termtter/rubytter_proxy.rb', line 188

def get
  @count += 1
  if @count > 5 || !@limit
    @count = 0
    @limit = @rubytter.limit_status
  end
  @limit
end

#safe?Boolean

Returns:

  • (Boolean)


197
198
199
200
201
# File 'lib/termtter/rubytter_proxy.rb', line 197

def safe?
  limit = self.get
  threshold = [(Time.parse(limit.reset_time) - Time.now) / 3600 - 0.1, 0.1].max * limit.hourly_limit
  threshold < limit.remaining_hits
end