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.



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

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

Instance Method Details

#getObject



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

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

#safe?Boolean

Returns:

  • (Boolean)


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

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