diff options
author | Sadie Powell <sadie@witchery.services> | 2025-02-18 17:01:33 +0000 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2025-02-18 17:01:33 +0000 |
commit | 3c55fbe6509c1706d21136392a4bfb2295a99a35 (patch) | |
tree | 79b4ea204d2d75bdc098cfbc6492c137a4770b96 /include/modules | |
parent | 98320d130f6c74793d416526e892b11ca5619b91 (diff) |
Rework how the RPC interface stores its events.
Diffstat (limited to 'include/modules')
-rw-r--r-- | include/modules/rpc.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/include/modules/rpc.h b/include/modules/rpc.h index 76ecf3542..f7e361d5c 100644 --- a/include/modules/rpc.h +++ b/include/modules/rpc.h @@ -46,9 +46,21 @@ class RPCServiceInterface; class RPCEvent { +private: + Anope::string event; + +protected: + RPCEvent(const Anope::string& e) + : event(e) + { + } + public: virtual ~RPCEvent() = default; - virtual bool Run(RPCServiceInterface *iface, HTTPClient *client, RPCRequest &request) = 0; + + const auto &GetEvent() const { return event; } + + virtual void Run(RPCServiceInterface *iface, HTTPClient *client, RPCRequest &request) = 0; }; class RPCServiceInterface @@ -57,9 +69,9 @@ class RPCServiceInterface public: RPCServiceInterface(Module *creator, const Anope::string &sname) : Service(creator, "RPCServiceInterface", sname) { } - virtual void Register(RPCEvent *event) = 0; + virtual bool Register(RPCEvent *event) = 0; - virtual void Unregister(RPCEvent *event) = 0; + virtual bool Unregister(RPCEvent *event) = 0; virtual void Reply(RPCRequest &request) = 0; }; |