Method: Faraday::Connection#in_parallel

Defined in:
lib/faraday/connection.rb

#in_parallel(manager = nil) { ... } ⇒ void

This method returns an undefined value.

Sets up the parallel manager to make a set of requests.

Parameters:

  • manager (Object) (defaults to: nil)

    The parallel manager that this Connection’s Adapter uses.

Yields:

  • a block to execute multiple requests.



317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
# File 'lib/faraday/connection.rb', line 317

def in_parallel(manager = nil, &block)
  @parallel_manager = manager || default_parallel_manager do
    warn 'Warning: `in_parallel` called but no parallel-capable adapter ' \
         'on Faraday stack'
    warn caller[2, 10].join("\n")
    nil
  end
  return yield unless @parallel_manager

  if @parallel_manager.respond_to?(:execute)
    # Execute is the new method that is responsible for executing the block.
    @parallel_manager.execute(&block)
  else
    # TODO: Old behaviour, deprecate and remove in 3.0
    yield
    @parallel_manager.run
  end
ensure
  @parallel_manager = nil
end