16#ifndef INCLUDED_RMQA_TRACINGPRODUCERIMPL
17#define INCLUDED_RMQA_TRACINGPRODUCERIMPL
19#include <rmqa_producerimpl.h>
21#include <rmqp_producertracing.h>
23#include <bsl_memory.h>
24#include <bsls_keyword.h>
31namespace BloombergLP {
38 Factory(
const bsl::shared_ptr<const rmqt::Endpoint>& endpoint,
39 const bsl::shared_ptr<rmqp::ProducerTracing>& tracing);
41 virtual bsl::shared_ptr<ProducerImpl>
42 create(uint16_t maxOutstandingConfirms,
43 const rmqt::ExchangeHandle& exchange,
44 const bsl::shared_ptr<rmqamqp::SendChannel>& channel,
45 bdlmt::ThreadPool& threadPool,
46 rmqio::EventLoop& eventLoop)
const BSLS_KEYWORD_OVERRIDE;
49 bsl::shared_ptr<const rmqt::Endpoint> d_endpoint;
50 bsl::shared_ptr<rmqp::ProducerTracing> d_tracing;
55 const bsl::shared_ptr<rmqamqp::SendChannel>& channel,
56 bdlmt::ThreadPool& threadPool,
57 rmqio::EventLoop& eventLoop,
58 const bsl::string& exchangeName,
59 const bsl::shared_ptr<const rmqt::Endpoint>& endpoint,
60 const bsl::shared_ptr<rmqp::ProducerTracing>& tracing);
63 const bsl::string& routingKey,
65 const bsls::TimeInterval& timeout) BSLS_KEYWORD_OVERRIDE;
69 const bsl::string& routingKey,
71 BSLS_KEYWORD_OVERRIDE;
74 bsl::string d_exchangeName;
75 bsl::shared_ptr<const rmqt::Endpoint> d_endpoint;
76 bsl::shared_ptr<rmqp::ProducerTracing> d_tracing;
Definition: rmqa_producerimpl.h:56
Definition: rmqa_producerimpl.h:54
Definition: rmqa_tracingproducerimpl.h:36
Definition: rmqa_tracingproducerimpl.h:34
SendStatus trySend(const rmqt::Message &message, const bsl::string &routingKey, const rmqp::Producer::ConfirmationCallback &confirmCallback) BSLS_KEYWORD_OVERRIDE
Send a message with the given routingKey to the exchange targeted by the producer.
Definition: rmqa_tracingproducerimpl.cpp:108
SendStatus send(const rmqt::Message &message, const bsl::string &routingKey, const rmqp::Producer::ConfirmationCallback &confirmCallback, const bsls::TimeInterval &timeout) BSLS_KEYWORD_OVERRIDE
Send a message with the given routingKey to the exchange targeted by the producer.
Definition: rmqa_tracingproducerimpl.cpp:83
bsl::function< void(const rmqt::Message &, const bsl::string &routingKey, const rmqt::ConfirmResponse &)> ConfirmationCallback
Invoked on receipt of message confirmation.
Definition: rmqp_producer.h:71
SendStatus
Possible results of rmqp::Producer::send.
Definition: rmqp_producer.h:50
An AMQP content message.
Definition: rmqt_message.h:43