8#include <userver/utils/fast_pimpl.hpp>
10#include <userver/urabbitmq/broker_interface.hpp>
12USERVER_NAMESPACE_BEGIN
30 Channel(ConnectionPtr&& channel);
33 Channel(Channel&& other)
noexcept;
35 void Publish(
const Exchange& exchange,
const std::string& routing_key,
37 engine::Deadline deadline)
override;
39 void Publish(
const Exchange& exchange,
const std::string& routing_key,
40 const std::string& message, engine::Deadline deadline)
override {
44 std::string
Get(
const Queue& queue, utils::Flags<Queue::
Flags> flags,
45 engine::Deadline deadline)
override;
48 utils::FastPimpl<ConnectionPtr, 32, 8> impl_;
64 ReliableChannel(ConnectionPtr&& channel);
67 ReliableChannel(ReliableChannel&& other)
noexcept;
71 engine::Deadline deadline)
override;
74 const std::string& message,
75 engine::Deadline deadline)
override {
81 utils::FastPimpl<ConnectionPtr, 32, 8> impl_;