class MessagingAdapter::MessageBroker

MessageBroker class to create broker objects specifying the adapter type

Public Class Methods

available_adapters() click to toggle source
# File lib/messaging_adapter.rb, line 24
def self.available_adapters
  MessageBrokerAdapter.constants.map(&:to_sym)
end
new(adapter = :RabbitMQ) click to toggle source
# File lib/messaging_adapter.rb, line 12
def initialize(adapter = :RabbitMQ)
  @adapter = MessageBrokerAdapter.const_get(adapter.to_s)
end

Public Instance Methods

publish(topic, payload, options = {}) click to toggle source
# File lib/messaging_adapter.rb, line 16
def publish(topic, payload, options = {})
  @adapter.publish(topic, payload, options)
end
subscribe(topic, options = {}) { |payload| ... } click to toggle source
# File lib/messaging_adapter.rb, line 20
def subscribe(topic, options = {})
  @adapter.subscribe(topic, options) { |payload| yield(payload) }
end