Sha256: b0beac381e765e4c399c189f22362c0678a7057d684c9945d2b36ce65f6fd7f6
Contents?: true
Size: 814 Bytes
Versions: 14
Compression:
Stored size: 814 Bytes
Contents
class Freddy module Producers class SendAndForgetProducer CONTENT_TYPE = 'application/json'.freeze def initialize(channel, logger) @logger = logger @exchange = channel.default_exchange @topic_exchange = channel.topic Freddy::FREDDY_TOPIC_EXCHANGE_NAME end def produce(destination, payload, properties) Producers.log_send_event(@logger, payload, destination) properties = properties.merge(routing_key: destination, content_type: CONTENT_TYPE) json_payload = Payload.dump(payload) # Connection adapters handle thread safety for #publish themselves. No # need to lock these. @topic_exchange.publish json_payload, properties.dup @exchange.publish json_payload, properties.dup end end end end
Version data entries
14 entries across 14 versions & 2 rubygems