1 Star 0 Fork 0

爱微城/iwechen-cfg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
IweChenCfg.cpp 1.83 KB
一键复制 编辑 原始数据 按行查看 历史
#include <boost/thread/mutex.hpp>
#include "IweChenCfg.h"
#include "JsonHelper.h"
#include "trace_worker.h"
static boost::mutex g_insMutexCalc;
IWeChenCfg::IWeChenCfg(const std::string &cfgFile)
{ trace_worker();
trace_printf("cfgFile.c_str() %s", cfgFile.c_str());
printf("cfgFile.c_str() %s\n", cfgFile.c_str());
std::ifstream ifs(cfgFile);
rapidjson::IStreamWrapper isw(ifs);
if (m_cfggDocument.ParseStream(isw).HasParseError())
{
printf("GetParseError %d %s\n", m_cfggDocument.GetParseError(), __FUNCTION__);
return;
}
}
IWeChenCfg::~IWeChenCfg()
{}
CWeChenCfg* CWeChenCfg::_instance = NULL;
CWeChenCfg* CWeChenCfg::instance()
{
if (NULL == _instance)
{
boost::unique_lock<boost::mutex> guardMutex(g_insMutexCalc);
if (NULL == _instance)
{
_instance = new CWeChenCfg("config.json");
}
}
return _instance;
}
CWeChenCfg::CWeChenCfg(const std::string &cfgFile)
:IWeChenCfg(cfgFile)
{
}
CWeChenCfg::~CWeChenCfg()
{}
const rapidjson::Value &CWeChenCfg::Cfg()
{ trace_worker();
return m_cfggDocument;
}
const rapidjson::Value &CWeChenCfg::AppIdCfg(const std::string &appId)
{ trace_worker();
return m_cfggDocument["APPID"][appId.c_str()];
}
const char *CWeChenCfg::GetSecret(const std::string &appId)
{ trace_worker();
if (!m_cfggDocument.HasMember("APPID")
|| !m_cfggDocument["APPID"].HasMember(appId.c_str()))
{
return "";
}
return m_cfggDocument["APPID"][appId.c_str()]["secret"].GetString();
}
const char *CWeChenCfg::GetAppIdTemp(const std::string &appId, const std::string &tempName)
{ trace_worker();
if (!m_cfggDocument.HasMember("APPID")
|| !m_cfggDocument["APPID"].HasMember(appId.c_str()))
{
return "";
}
return m_cfggDocument["APPID"][appId.c_str()]["template"][tempName.c_str()].GetString();
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/AiWeiCheng/iwechen-cfg.git
git@gitee.com:AiWeiCheng/iwechen-cfg.git
AiWeiCheng
iwechen-cfg
iwechen-cfg
master

搜索帮助

D67c1975 1850385 1daf7b77 1850385