Class: Jira::Auto::Tool::RateLimitedJiraClient::InProcessBased

Inherits:
Jira::Auto::Tool::RateLimitedJiraClient show all
Defined in:
lib/jira/auto/tool/rate_limited_jira_client/in_process_based.rb

Constant Summary

Constants inherited from Jira::Auto::Tool::RateLimitedJiraClient

NO_RATE_INTERVAL_IN_SECONDS, NO_RATE_LIMIT_PER_INTERVAL

Instance Attribute Summary

Attributes inherited from Jira::Auto::Tool::RateLimitedJiraClient

#rate_interval_in_seconds, #rate_limit_per_interval

Instance Method Summary collapse

Methods inherited from Jira::Auto::Tool::RateLimitedJiraClient

implementation_class_for, #initialize, #original_request, #request

Constructor Details

This class inherits a constructor from Jira::Auto::Tool::RateLimitedJiraClient

Instance Method Details

#rate_limit(&block) ⇒ Object



12
13
14
15
16
# File 'lib/jira/auto/tool/rate_limited_jira_client/in_process_based.rb', line 12

def rate_limit(&block)
  rate_queue.shift

  block.call
end

#rate_queueObject



18
19
20
21
# File 'lib/jira/auto/tool/rate_limited_jira_client/in_process_based.rb', line 18

def rate_queue
  @rate_queue ||=
    Limiter::RateQueue.new(rate_limit_per_interval, interval: rate_interval_in_seconds)
end