Sha256: 1a84a4be79f0769813614844d10e12eb154a94e7d23a32cc30bf9a234850e082

Contents?: true

Size: 850 Bytes

Versions: 98

Compression:

Stored size: 850 Bytes

Contents

module ActivePublisher
  # Publish a message asynchronously to RabbitMQ.
  #
  # Asynchronous is designed to do two things:
  # 1. Introduce the idea of a durable retry should the RabbitMQ connection disconnect.
  # 2. Provide a higher-level pattern for fire-and-forget publishing.
  #
  # @param [String] route The routing key to use for this message.
  # @param [String] payload The message you are sending. Should already be encoded as a string.
  # @param [String] exchange The exchange you want to publish to.
  # @param [Hash] options hash to set message parameters (e.g. headers).
  def self.publish_async(route, payload, exchange_name, options = {})
    ::ActivePublisher::Async.publisher_adapter.publish(route, payload, exchange_name, options)
  end

  module Async
    class << self
      attr_accessor :publisher_adapter
    end
  end
end

Version data entries

98 entries across 98 versions & 1 rubygems

Version Path
active_publisher-1.0.2-java lib/active_publisher/async.rb
active_publisher-1.0.1-java lib/active_publisher/async.rb
active_publisher-1.0.1 lib/active_publisher/async.rb
active_publisher-1.0.0-java lib/active_publisher/async.rb
active_publisher-1.0.0 lib/active_publisher/async.rb
active_publisher-1.0.0.pre4-java lib/active_publisher/async.rb
active_publisher-1.0.0.pre4 lib/active_publisher/async.rb
active_publisher-1.0.0.pre3-java lib/active_publisher/async.rb
active_publisher-1.0.0.pre3 lib/active_publisher/async.rb
active_publisher-1.0.0.pre2 lib/active_publisher/async.rb
active_publisher-1.0.0.pre2-java lib/active_publisher/async.rb
active_publisher-1.0.0.pre1 lib/active_publisher/async.rb
active_publisher-1.0.0.pre0-java lib/active_publisher/async.rb
active_publisher-1.0.0.pre0 lib/active_publisher/async.rb
active_publisher-0.4.0 lib/active_publisher/async.rb
active_publisher-0.4.0-java lib/active_publisher/async.rb
active_publisher-0.4.0.pre1-java lib/active_publisher/async.rb
active_publisher-0.4.0.pre1 lib/active_publisher/async.rb
active_publisher-0.3.0-java lib/active_publisher/async.rb
active_publisher-0.3.0 lib/active_publisher/async.rb