Class: ActiveJob::Temporal::BatchEnqueuer

Inherits:
Object
  • Object
show all
Defined in:
lib/activejob/temporal/batch_enqueuer.rb

Instance Method Summary collapse

Constructor Details

#initialize(enqueue:, validate_job:, validate_scheduled_at:) ⇒ BatchEnqueuer

Returns a new instance of BatchEnqueuer.



8
9
10
11
12
# File 'lib/activejob/temporal/batch_enqueuer.rb', line 8

def initialize(enqueue:, validate_job:, validate_scheduled_at:)
  @enqueue_job = enqueue
  @validate_job = validate_job
  @validate_scheduled_at = validate_scheduled_at
end

Instance Method Details

#enqueue(items, concurrency: 1) ⇒ Object



14
15
16
17
18
19
20
21
22
# File 'lib/activejob/temporal/batch_enqueuer.rb', line 14

def enqueue(items, concurrency: 1)
  entries = validate_entries!(items)
  concurrency = validate_concurrency!(concurrency)
  results = Array.new(entries.length)

  enqueue_entries(entries, results, concurrency)

  BatchEnqueueResult.new(results)
end