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 const Exchange& exchange,
37 engine::Deadline deadline
40 void DeclareExchange(
const Exchange& exchange, Exchange::
Type type, engine::Deadline deadline)
override {
41 DeclareExchange(exchange, type, {}, deadline);
44 void DeclareExchange(
const Exchange& exchange, engine::Deadline deadline)
override {
45 DeclareExchange(exchange, Exchange::
Type::kFanOut, {}, deadline);
50 void DeclareQueue(
const Queue& queue, engine::Deadline deadline)
override { DeclareQueue(queue, {}, deadline); }
53 const Exchange& exchange,
55 const std::string& routing_key,
56 engine::Deadline deadline
59 void RemoveExchange(
const Exchange& exchange, engine::Deadline deadline)
override;
61 void RemoveQueue(
const Queue& queue, engine::Deadline deadline)
override;
64 utils::FastPimpl<ConnectionPtr, 32, 8> impl_;