lichao
2021-05-28 9243710ca372de26823c2225c7b46b072458c671
box/node_center.h
@@ -122,7 +122,8 @@
   void RecordMsg(const MsgI &msg);
   bool SendAllocReply(ShmSocket &socket, const MQInfo &dest, const int64_t reply, const MsgI &msg);
   bool SendAllocMsg(ShmSocket &socket, const MQInfo &dest, const MsgI &msg);
   bool ProxyMsg(const MQInfo &dest, BHMsgHead &head, const std::string &body_content, ShmSocket::RecvCB &&cb);
   bool PassRemoteRequestToLocal(const MQInfo &dest, BHMsgHead &head, const std::string &body_content, ShmSocket::RecvCB &&cb);
   bool PassRemoteReplyToLocal(const MQInfo &dest, BHMsgHead &head, const std::string &body_content);
   void OnAlloc(ShmSocket &socket, const int64_t val);
   void OnFree(ShmSocket &socket, const int64_t val);
   bool OnCommand(ShmSocket &socket, const int64_t val);
@@ -159,6 +160,14 @@
   {
      return HandleMsg<MsgCommonReply, Func>(head, op);
   }
   template <class Reply>
   bool CheckMsg(const BHMsgHead &head, Reply &reply)
   {
      bool r = false;
      auto onOk = [&](Node) { r = true; return MakeReply<Reply>(eSuccess); };
      reply = HandleMsg<Reply>(head, onOk);
      return r;
   }
   MsgCommonReply Unregister(const BHMsgHead &head, MsgUnregister &msg);
   MsgCommonReply RegisterRPC(const BHMsgHead &head, MsgRegisterRPC &msg);
@@ -184,6 +193,8 @@
      return node && Valid(*node);
   }
   void RemoveNode(Node &node);
   Node GetNode(const MQId mq);
   std::string id_; // center proc id;
   std::unordered_map<Topic, Clients> service_map_;