From 306fd4ebfafb54296ebb1ca4a34e436942f11ed0 Mon Sep 17 00:00:00 2001 From: azw Date: Sun, 9 Apr 2023 12:16:21 +0000 Subject: [PATCH] 1 --- server/wsproxy/handlermgr.cc | 19 ++++++------------- server/wsproxy/handlermgr.h | 4 ++-- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/server/wsproxy/handlermgr.cc b/server/wsproxy/handlermgr.cc index 0a092d7..0bcc8a8 100644 --- a/server/wsproxy/handlermgr.cc +++ b/server/wsproxy/handlermgr.cc @@ -2,6 +2,7 @@ #include #include +#include #include "handlermgr.h" @@ -11,23 +12,19 @@ #include "ss_proto.pb.h" -static void _GMOpsSelfChecking(f8::JsonHttpRequest* request) +static void _GMOpsSelfChecking(std::shared_ptr request) { - #if 0 request->resp_xobj->SetVal("errcode", 0); request->resp_xobj->SetVal("errmsg", ""); request->resp_xobj->SetVal("healthy", 1); request->resp_xobj->SetVal("max_rundelay", 10); - #endif } -static void _GMOpsGetNodeId(f8::JsonHttpRequest* request) +static void _GMOpsGetNodeId(std::shared_ptr request) { - #if 0 request->resp_xobj->SetVal("errcode", 0); request->resp_xobj->SetVal("errmsg", ""); request->resp_xobj->SetVal("node_id", App::Instance()->node_id); - #endif } 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(); auto itr = gmhandlers_.find(msgname); if (itr != gmhandlers_.end()) { - #if 0 - f8::JsonHttpRequest* request = new f8::JsonHttpRequest; + auto request = std::make_shared(); request->saddr = saddr; request->socket_handle = sockhandle; request->query_str = querystr; - request->request.ReadFromUrlQueryString(querystr); + request->params->ReadFromUrlQueryString(querystr); itr->second(request); if (!request->pending){ std::string response; request->resp_xobj->ToJsonStr(response); GCListener::Instance()->SendText(sockhandle, a8::HttpResponse(response)); - - delete request; } - #endif } else { GCListener::Instance()->SendText(sockhandle, a8::HttpResponse("{}")); } } void HandlerMgr::RegisterGMMsgHandler(const std::string& msgname, - void (*handler)(f8::JsonHttpRequest*)) + void (*handler)(std::shared_ptr)) { gmhandlers_[msgname] = handler; } diff --git a/server/wsproxy/handlermgr.h b/server/wsproxy/handlermgr.h index 758f0cc..3208ac4 100644 --- a/server/wsproxy/handlermgr.h +++ b/server/wsproxy/handlermgr.h @@ -30,7 +30,7 @@ class HandlerMgr : public a8::Singleton private: void RegisterNetMsgHandlers(); void RegisterGMMsgHandler(const std::string& msgname, - void (*)(f8::JsonHttpRequest*)); + void (*)(std::shared_ptr)); - std::map gmhandlers_; + std::map)> gmhandlers_; };