60 lines
2.3 KiB
C++
60 lines
2.3 KiB
C++
#include "precompile.h"
|
|
|
|
#include "jsondatamgr.h"
|
|
#include "app.h"
|
|
|
|
void JsonDataMgr::Init()
|
|
{
|
|
std::string payserverserver_cluster_json_file;
|
|
std::string targetserver_cluster_json_file;
|
|
std::string mysql_cluster_json_file;
|
|
if (f8::IsOnlineEnv()) {
|
|
payserverserver_cluster_json_file = a8::Format("../config/game%d.payserver.cluster.json", {GAME_ID});
|
|
targetserver_cluster_json_file = a8::Format("../config/game%d.gameserver.cluster.json", {GAME_ID});
|
|
mysql_cluster_json_file = a8::Format("../config/game%d.payserver.mysql.cluster.json", {GAME_ID});
|
|
} else {
|
|
payserverserver_cluster_json_file = a8::Format("/var/data/conf_test/game%d/payserver/game%d.payserver.cluster.json",
|
|
{GAME_ID, GAME_ID});
|
|
targetserver_cluster_json_file = a8::Format("/var/data/conf_test/game%d/payserver/game%d.gameserver.cluster.json",
|
|
{GAME_ID, GAME_ID});
|
|
mysql_cluster_json_file = a8::Format("/var/data/conf_test/game%d/payserver/game%d.payserver.mysql.cluster.json",
|
|
{GAME_ID, GAME_ID});
|
|
}
|
|
payserverserver_cluster_json_.ReadFromFile(payserverserver_cluster_json_file);
|
|
targetserver_cluster_json_.ReadFromFile(targetserver_cluster_json_file);
|
|
mysql_cluster_json_.ReadFromFile(mysql_cluster_json_file);
|
|
}
|
|
|
|
void JsonDataMgr::UnInit()
|
|
{
|
|
}
|
|
|
|
std::shared_ptr<a8::XObject> JsonDataMgr::GetConf()
|
|
{
|
|
if (App::Instance()->instance_id < 1 || App::Instance()->instance_id > payserverserver_cluster_json_.Size()) {
|
|
abort();
|
|
}
|
|
return payserverserver_cluster_json_[App::Instance()->instance_id - 1];
|
|
}
|
|
|
|
std::shared_ptr<a8::XObject> JsonDataMgr::GetTargetServerClusterConf()
|
|
{
|
|
return std::make_shared<a8::XObject>(targetserver_cluster_json_);
|
|
}
|
|
|
|
std::shared_ptr<a8::XObject> JsonDataMgr::GetTargetServerClusterConf(int serverid)
|
|
{
|
|
if (serverid < 1 || serverid > targetserver_cluster_json_.Size()) {
|
|
abort();
|
|
}
|
|
return targetserver_cluster_json_[serverid - 1];
|
|
}
|
|
|
|
std::shared_ptr<a8::XObject> JsonDataMgr::GetMysqlConf()
|
|
{
|
|
if (App::Instance()->instance_id < 1 || App::Instance()->instance_id > mysql_cluster_json_.Size()) {
|
|
abort();
|
|
}
|
|
return mysql_cluster_json_[App::Instance()->instance_id - 1];
|
|
}
|