15template<
typename Datatype>
20 send(std::move(data), timeout);
23template<
typename Datatype>
27 if (m_queue ==
nullptr) {
32 return m_queue->try_push(std::move(data), timeout);
35template<
typename Datatype>
39 if (m_queue ==
nullptr)
40 throw ConnectionInstanceNotFound(
ERS_HERE, this->
id().uid);
43 m_queue->push(std::move(data), timeout);
44 }
catch (QueueTimeoutExpired& ex) {
49template<
typename Datatype>
57template<
typename Datatype>
60 , m_queue(
std::move(other.m_queue))
64template<
typename Datatype>
68 TLOG(
"QueueSenderModel") <<
"QueueSenderModel created with DT! Addr: " <<
static_cast<void*
>(
this);
70 TLOG(
"QueueSenderModel") <<
"QueueSenderModel m_queue=" <<
static_cast<void*
>(
m_queue.get());
static QueueRegistry & get()
Get a handle to the QueueRegistry.
std::shared_ptr< Queue< T > > get_queue(const std::string &name)
Get a handle to a Queue.
bool try_send(Datatype &&data, Sender::timeout_t timeout) override
bool is_ready_for_sending(Sender::timeout_t timeout) override
std::shared_ptr< Queue< Datatype > > m_queue
void send_with_topic(Datatype &&data, Sender::timeout_t timeout, std::string) override
QueueSenderModel(ConnectionId const &request)
void send(Datatype &&data, Sender::timeout_t timeout) override
std::chrono::milliseconds timeout_t
void error(const Issue &issue)