class Freddy::Producers::ReplyProducer

Constants

CONTENT_TYPE

Public Class Methods

new(channel, logger) click to toggle source
# File lib/freddy/producers/reply_producer.rb, line 6
def initialize(channel, logger)
  @logger = logger
  @exchange = channel.default_exchange
end

Public Instance Methods

produce(destination, payload, properties) click to toggle source
# File lib/freddy/producers/reply_producer.rb, line 11
def produce(destination, payload, properties)
  Freddy.trace.log event: 'Sending response', queue: destination, payload: payload

  properties = properties.merge(
    routing_key: destination,
    content_type: CONTENT_TYPE
  )

  @exchange.publish Payload.dump(payload), properties
end