class Michael::Services::Repositories

Attributes

prs[R]
threads[R]

Public Class Methods

new(prs, threads = 5) click to toggle source
# File lib/michael/services/repositories.rb, line 10
def initialize(prs, threads = 5)
  raise Fatal, 'uninitialized prs' if prs.nil?

  @prs = prs
  @threads = threads
end

Public Instance Methods

pull_requests(org_repos_list, queue = nil, params = {}) click to toggle source
# File lib/michael/services/repositories.rb, line 17
def pull_requests(org_repos_list, queue = nil, params = {})
  repos = Parallel.map(org_repos_list, in_threads: threads) do |org_repo|
    queue << org_repo unless queue.nil?
    list = prs.search(org_repo, params)
    Michael::Models::Repository.new(org_repo, prs: list)
  end

  queue&.close

  repos
end