class Epages::REST::Shop

Public Instance Methods

parallel_calls(requests) click to toggle source
# File lib/epages/rest/shop.rb, line 11
def parallel_calls(requests)
  threads = []
  result = requests
  requests.each do |key, values|
    values.each_with_index do |call, i|
      threads << (values.is_a?(Array) ? process_thread(key, call, i) : process_thread(key, values))
    end
  end
  threads.each do |t|
    t.join
    t[:index].nil? ? result[t[:name]] = t[:result] : result[t[:name]][t[:index]] = t[:result]
  end
  result
end