Message-Queues beta 1.1
A Message-Queues based Cpp
 
载入中...
搜索中...
未找到
XuMQ::ExchangeManager类 参考

交换机数据内存管理类 更多...

#include <exchange.hpp>

XuMQ::ExchangeManager 的协作图:

Public 类型

using ptr = std::shared_ptr< ExchangeManager >
 交换机数据内存管理指针
 

Public 成员函数

 ExchangeManager (const std::string &dbfile)
 交换机数据内存管理类 构造函数 从数据库中恢复数据
 
bool declareExchange (const std::string &name, ExchangeType type, bool durable, bool auto_delete, const google::protobuf::Map< std::string, std::string > &args)
 声明交换机
 
void deleteExchange (const std::string &name)
 删除交换机
 
Exchange::ptr selectExchange (const std::string &name)
 获取指定交换机
 
bool exists (const std::string &name)
 判断交换机是否存在
 
void clear ()
 清除所有交换机数据
 
size_t size ()
 获取交换机数量
 

Private 属性

std::mutex _mutex
 互斥锁
 
ExchangeMapper _mapper
 持久化交换机管理类
 
ExchangeMap _exchanges
 全部交换机信息
 

详细描述

交换机数据内存管理类

成员类型定义说明

◆ ptr

using XuMQ::ExchangeManager::ptr = std::shared_ptr<ExchangeManager>

交换机数据内存管理指针

构造及析构函数说明

◆ ExchangeManager()

XuMQ::ExchangeManager::ExchangeManager ( const std::string &  dbfile)
inline

交换机数据内存管理类 构造函数 从数据库中恢复数据

参数
dbfile数据库名称
函数调用图:

成员函数说明

◆ clear()

void XuMQ::ExchangeManager::clear ( )
inline

清除所有交换机数据

函数调用图:

◆ declareExchange()

bool XuMQ::ExchangeManager::declareExchange ( const std::string &  name,
ExchangeType  type,
bool  durable,
bool  auto_delete,
const google::protobuf::Map< std::string, std::string > &  args 
)
inline

声明交换机

参数
name交换机名称
type交换机类型
durable数据持久化标志
auto_delete自动删除标志
args其他参数
返回
声明成功返回true 失败返回false
函数调用图:

◆ deleteExchange()

void XuMQ::ExchangeManager::deleteExchange ( const std::string &  name)
inline

删除交换机

参数
name交换机名称
函数调用图:

◆ exists()

bool XuMQ::ExchangeManager::exists ( const std::string &  name)
inline

判断交换机是否存在

参数
name交换机名称
返回
true表示交换机存在 flase表示交换机不存在

◆ selectExchange()

Exchange::ptr XuMQ::ExchangeManager::selectExchange ( const std::string &  name)
inline

获取指定交换机

参数
name交换机名称
返回
交换机对象指针

◆ size()

size_t XuMQ::ExchangeManager::size ( )
inline

获取交换机数量

返回
交换机数量

类成员变量说明

◆ _exchanges

ExchangeMap XuMQ::ExchangeManager::_exchanges
private

全部交换机信息

◆ _mapper

ExchangeMapper XuMQ::ExchangeManager::_mapper
private

持久化交换机管理类

◆ _mutex

std::mutex XuMQ::ExchangeManager::_mutex
private

互斥锁