Sha256: b27f32d8fdc49953b249cf3c0cf46eb3c74c6eb65eda09f3748803830bc29bfa

Contents?: true

Size: 825 Bytes

Versions: 1

Compression:

Stored size: 825 Bytes

Contents

begin # in case the app doesn't use Sidekiq
  require 'sidekiq'

  module Pwwka
    class SendMessageAsyncSidekiqJob
      include Sidekiq::Worker
      extend Pwwka::Logging

      sidekiq_options queue: 'pwwka_send_message_async', retry: 3

      def perform(payload, routing_key, options = {})
        type = options["type"]
        message_id = options["message_id"] || "auto_generate"
        headers = options["headers"]

        logger.info("Sending message async #{routing_key}, #{payload}")

        message_id = message_id.to_sym if message_id == "auto_generate"

        Pwwka::Transmitter.send_message!(
          payload,
          routing_key,
          type: type,
          message_id: message_id,
          headers: headers,
          on_error: :raise,
        )
      end
    end
  end
rescue LoadError
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pwwka-0.22.2.RC2 lib/pwwka/send_message_async_sidekiq_job.rb