8#include <userver/utils/fast_pimpl.hpp>
10#include <userver/urabbitmq/broker_interface.hpp>
12USERVER_NAMESPACE_BEGIN
28 AdminChannel(ConnectionPtr&& channel);
31 AdminChannel(AdminChannel&& other)
noexcept;
34 utils::Flags<Exchange::
Flags> flags,
35 engine::Deadline deadline)
override;
38 engine::Deadline deadline)
override {
39 DeclareExchange(exchange, type, {}, deadline);
43 engine::Deadline deadline)
override {
44 DeclareExchange(exchange, Exchange::
Type::kFanOut, {}, deadline);
48 engine::Deadline deadline)
override;
50 void DeclareQueue(
const Queue& queue, engine::Deadline deadline)
override {
51 DeclareQueue(queue, {}, deadline);
54 void BindQueue(
const Exchange& exchange,
const Queue& queue,
55 const std::string& routing_key,
56 engine::Deadline deadline)
override;
59 engine::Deadline deadline)
override;
61 void RemoveQueue(
const Queue& queue, engine::Deadline deadline)
override;
64 utils::FastPimpl<ConnectionPtr, 32, 8> impl_;