summaryrefslogtreecommitdiff
path: root/modules/m_xmlrpc_main.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2014-05-28 12:07:29 -0400
committerAdam <Adam@anope.org>2014-05-28 12:07:54 -0400
commitf29e1cf383529a1a29f02b0669d973f5ee0b7a66 (patch)
tree3c33db276dc9328235bbd572641521ed44458176 /modules/m_xmlrpc_main.cpp
parent1253c70e0682fa1490c99c3d2869049a0e3fa2e0 (diff)
Move most of the core pseudoclient logic to modules
Diffstat (limited to 'modules/m_xmlrpc_main.cpp')
-rw-r--r--modules/m_xmlrpc_main.cpp20
1 files changed, 10 insertions, 10 deletions
diff --git a/modules/m_xmlrpc_main.cpp b/modules/m_xmlrpc_main.cpp
index 011b2d250..224b25a60 100644
--- a/modules/m_xmlrpc_main.cpp
+++ b/modules/m_xmlrpc_main.cpp
@@ -3,7 +3,7 @@
static Module *me;
-class XMLRPCIdentifyRequest : public IdentifyRequest
+class XMLRPCIdentifyRequest : public NickServ::IdentifyRequestListener
{
XMLRPCRequest request;
HTTPReply repl; /* Request holds a reference to the HTTPReply, because we might exist long enough to invalidate it
@@ -12,9 +12,9 @@ class XMLRPCIdentifyRequest : public IdentifyRequest
Reference<XMLRPCServiceInterface> xinterface;
public:
- XMLRPCIdentifyRequest(Module *m, XMLRPCRequest& req, HTTPClient *c, XMLRPCServiceInterface* iface, const Anope::string &acc, const Anope::string &pass) : IdentifyRequest(m, acc, pass), request(req), repl(request.r), client(c), xinterface(iface) { }
+ XMLRPCIdentifyRequest(XMLRPCRequest& req, HTTPClient *c, XMLRPCServiceInterface* iface) : request(req), repl(request.r), client(c), xinterface(iface) { }
- void OnSuccess() override
+ void OnSuccess(NickServ::IdentifyRequest *req) override
{
if (!xinterface || !client)
return;
@@ -22,13 +22,13 @@ class XMLRPCIdentifyRequest : public IdentifyRequest
request.r = this->repl;
request.reply("result", "Success");
- request.reply("account", GetAccount());
+ request.reply("account", req->GetAccount());
xinterface->Reply(request);
client->SendReply(&request.r);
}
- void OnFail() override
+ void OnFail(NickServ::IdentifyRequest *req) override
{
if (!xinterface || !client)
return;
@@ -81,7 +81,7 @@ class MyXMLRPCEvent : public XMLRPCEvent
{
request.reply("result", "Success");
- NickAlias *na = NickAlias::Find(user);
+ NickServ::Nick *na = NickServ::FindNick(user);
Anope::string out;
@@ -91,7 +91,7 @@ class MyXMLRPCEvent : public XMLRPCEvent
XMLRPCommandReply(Anope::string &s) : str(s) { }
- void SendMessage(BotInfo *, const Anope::string &msg) override
+ void SendMessage(const MessageSource &, const Anope::string &msg) override
{
str += msg + "\n";
};
@@ -112,16 +112,16 @@ class MyXMLRPCEvent : public XMLRPCEvent
Anope::string username = request.data.size() > 0 ? request.data[0] : "";
Anope::string password = request.data.size() > 1 ? request.data[1] : "";
- if (username.empty() || password.empty())
+ if (username.empty() || password.empty() || !NickServ::service)
request.reply("error", "Invalid parameters");
else
{
- XMLRPCIdentifyRequest *req = new XMLRPCIdentifyRequest(me, request, client, iface, username, password);
+ NickServ::IdentifyRequest *req = NickServ::service->CreateIdentifyRequest(new XMLRPCIdentifyRequest(request, client, iface), me, username, password);
Event::OnCheckAuthentication(&Event::CheckAuthentication::OnCheckAuthentication, nullptr, req);
req->Dispatch();
return false;
}
-
+
return true;
}