#pragma once #include #include #include #include #include namespace llarp { struct AbstractRouter; } namespace llarp::rpc { using LMQ_ptr = std::shared_ptr; struct RpcServer { explicit RpcServer(LMQ_ptr, AbstractRouter*); ~RpcServer() = default; void AddRPCCategories(); private: void HandleLogsSubRequest(oxenmq::Message& m); LMQ_ptr m_LMQ; AbstractRouter* const m_Router; oxen::log::PubsubLogger log_subs; }; } // namespace llarp::rpc