This commit is contained in:
azw 2023-04-09 12:16:21 +00:00
parent 7e60dc6078
commit 306fd4ebfa
2 changed files with 8 additions and 15 deletions

View File

@ -2,6 +2,7 @@
#include <a8/mutable_xobject.h> #include <a8/mutable_xobject.h>
#include <f8/msgqueue.h> #include <f8/msgqueue.h>
#include <f8/jsonhttprequest.h>
#include "handlermgr.h" #include "handlermgr.h"
@ -11,23 +12,19 @@
#include "ss_proto.pb.h" #include "ss_proto.pb.h"
static void _GMOpsSelfChecking(f8::JsonHttpRequest* request) static void _GMOpsSelfChecking(std::shared_ptr<f8::JsonHttpRequest> request)
{ {
#if 0
request->resp_xobj->SetVal("errcode", 0); request->resp_xobj->SetVal("errcode", 0);
request->resp_xobj->SetVal("errmsg", ""); request->resp_xobj->SetVal("errmsg", "");
request->resp_xobj->SetVal("healthy", 1); request->resp_xobj->SetVal("healthy", 1);
request->resp_xobj->SetVal("max_rundelay", 10); request->resp_xobj->SetVal("max_rundelay", 10);
#endif
} }
static void _GMOpsGetNodeId(f8::JsonHttpRequest* request) static void _GMOpsGetNodeId(std::shared_ptr<f8::JsonHttpRequest> request)
{ {
#if 0
request->resp_xobj->SetVal("errcode", 0); request->resp_xobj->SetVal("errcode", 0);
request->resp_xobj->SetVal("errmsg", ""); request->resp_xobj->SetVal("errmsg", "");
request->resp_xobj->SetVal("node_id", App::Instance()->node_id); request->resp_xobj->SetVal("node_id", App::Instance()->node_id);
#endif
} }
void HandlerMgr::Init() void HandlerMgr::Init()
@ -71,29 +68,25 @@ void HandlerMgr::ProcGMMsg(unsigned long saddr, int sockhandle,
std::string msgname = a8::Get(request, "c").GetString() + "$" + a8::Get(request, "a").GetString(); std::string msgname = a8::Get(request, "c").GetString() + "$" + a8::Get(request, "a").GetString();
auto itr = gmhandlers_.find(msgname); auto itr = gmhandlers_.find(msgname);
if (itr != gmhandlers_.end()) { if (itr != gmhandlers_.end()) {
#if 0 auto request = std::make_shared<f8::JsonHttpRequest>();
f8::JsonHttpRequest* request = new f8::JsonHttpRequest;
request->saddr = saddr; request->saddr = saddr;
request->socket_handle = sockhandle; request->socket_handle = sockhandle;
request->query_str = querystr; request->query_str = querystr;
request->request.ReadFromUrlQueryString(querystr); request->params->ReadFromUrlQueryString(querystr);
itr->second(request); itr->second(request);
if (!request->pending){ if (!request->pending){
std::string response; std::string response;
request->resp_xobj->ToJsonStr(response); request->resp_xobj->ToJsonStr(response);
GCListener::Instance()->SendText(sockhandle, a8::HttpResponse(response)); GCListener::Instance()->SendText(sockhandle, a8::HttpResponse(response));
delete request;
} }
#endif
} else { } else {
GCListener::Instance()->SendText(sockhandle, a8::HttpResponse("{}")); GCListener::Instance()->SendText(sockhandle, a8::HttpResponse("{}"));
} }
} }
void HandlerMgr::RegisterGMMsgHandler(const std::string& msgname, void HandlerMgr::RegisterGMMsgHandler(const std::string& msgname,
void (*handler)(f8::JsonHttpRequest*)) void (*handler)(std::shared_ptr<f8::JsonHttpRequest>))
{ {
gmhandlers_[msgname] = handler; gmhandlers_[msgname] = handler;
} }

View File

@ -30,7 +30,7 @@ class HandlerMgr : public a8::Singleton<HandlerMgr>
private: private:
void RegisterNetMsgHandlers(); void RegisterNetMsgHandlers();
void RegisterGMMsgHandler(const std::string& msgname, void RegisterGMMsgHandler(const std::string& msgname,
void (*)(f8::JsonHttpRequest*)); void (*)(std::shared_ptr<f8::JsonHttpRequest>));
std::map<std::string, void (*)(f8::JsonHttpRequest*)> gmhandlers_; std::map<std::string, void (*)(std::shared_ptr<f8::JsonHttpRequest>)> gmhandlers_;
}; };