module EventRouter::DeliveryAdapters::Helpers::Sidekiq

Public Instance Methods

process_event(event, serialized_event: nil) click to toggle source
# File lib/event_router/delivery_adapters/helpers/sidekiq.rb, line 11
def process_event(event, serialized_event: nil)
  serialized_event ||= EventRouter.serialize(event)

  yield_destinations(event) do |destination, serialized_payload|
    options = destination_options(destination, EventRouter::DeliveryAdapters::Sidekiq)

    Workers::SidekiqDestinationDeliveryWorker
      .set(queue: options[:queue], retry: options[:retry])
      .perform_async(destination.name, serialized_event, serialized_payload)
  end
end