summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree
diff options
context:
space:
mode:
authorattilamolnar <attilamolnar@hush.com>2013-07-19 13:55:02 +0200
committerattilamolnar <attilamolnar@hush.com>2013-08-25 13:41:36 +0200
commit61d586b1a3ad689669f6dcdc285b0d021ca814bd (patch)
tree328d3148a653932445a2f8488500852b1e812e52 /src/modules/m_spanningtree
parent9745333cd4c846ef04ad78c41f04a87af7e5b2d6 (diff)
Clean up the protocol interface
Diffstat (limited to 'src/modules/m_spanningtree')
-rw-r--r--src/modules/m_spanningtree/main.cpp2
-rw-r--r--src/modules/m_spanningtree/protocolinterface.cpp29
-rw-r--r--src/modules/m_spanningtree/protocolinterface.h14
3 files changed, 12 insertions, 33 deletions
diff --git a/src/modules/m_spanningtree/main.cpp b/src/modules/m_spanningtree/main.cpp
index 169a5cd90..57fe2090c 100644
--- a/src/modules/m_spanningtree/main.cpp
+++ b/src/modules/m_spanningtree/main.cpp
@@ -64,7 +64,7 @@ void ModuleSpanningTree::init()
ServerInstance->Modules->AddService(commands->map);
delete ServerInstance->PI;
- ServerInstance->PI = new SpanningTreeProtocolInterface(Utils);
+ ServerInstance->PI = new SpanningTreeProtocolInterface;
loopCall = false;
// update our local user count
diff --git a/src/modules/m_spanningtree/protocolinterface.cpp b/src/modules/m_spanningtree/protocolinterface.cpp
index 0f5c40cc1..5fd598d1d 100644
--- a/src/modules/m_spanningtree/protocolinterface.cpp
+++ b/src/modules/m_spanningtree/protocolinterface.cpp
@@ -27,12 +27,11 @@
* For documentation on this class, see include/protocol.h.
*/
-void SpanningTreeProtocolInterface::GetServerList(ProtoServerList &sl)
+void SpanningTreeProtocolInterface::GetServerList(ServerList& sl)
{
- sl.clear();
for (server_hash::iterator i = Utils->serverlist.begin(); i != Utils->serverlist.end(); i++)
{
- ProtoServer ps;
+ ServerInfo ps;
ps.servername = i->second->GetName();
TreeServer* s = i->second->GetParent();
ps.parentname = s ? s->GetName() : "";
@@ -127,30 +126,18 @@ void SpanningTreeProtocolInterface::PushToClient(User* target, const std::string
Utils->DoOneToOne(ServerInstance->Config->GetSID(), "PUSH", p, target->server);
}
-void SpanningTreeProtocolInterface::SendChannelPrivmsg(Channel* target, char status, const std::string &text)
+void SpanningTreeProtocolInterface::SendMessage(Channel* target, char status, const std::string& text, MessageType msgtype)
{
+ const char* cmd = (msgtype == MSG_PRIVMSG ? "PRIVMSG" : "NOTICE");
CUList exempt_list;
- Utils->SendChannelMessage(ServerInstance->Config->GetSID(), target, text, status, exempt_list, "PRIVMSG");
+ Utils->SendChannelMessage(ServerInstance->Config->GetSID(), target, text, status, exempt_list, cmd);
}
-void SpanningTreeProtocolInterface::SendChannelNotice(Channel* target, char status, const std::string &text)
-{
- CUList exempt_list;
- Utils->SendChannelMessage(ServerInstance->Config->GetSID(), target, text, status, exempt_list, "NOTICE");
-}
-
-void SpanningTreeProtocolInterface::SendUserPrivmsg(User* target, const std::string &text)
-{
- parameterlist p;
- p.push_back(target->uuid);
- p.push_back(":" + text);
- Utils->DoOneToOne(ServerInstance->Config->GetSID(), "PRIVMSG", p, target->server);
-}
-
-void SpanningTreeProtocolInterface::SendUserNotice(User* target, const std::string &text)
+void SpanningTreeProtocolInterface::SendMessage(User* target, const std::string& text, MessageType msgtype)
{
+ const char* cmd = (msgtype == MSG_PRIVMSG ? "PRIVMSG" : "NOTICE");
parameterlist p;
p.push_back(target->uuid);
p.push_back(":" + text);
- Utils->DoOneToOne(ServerInstance->Config->GetSID(), "NOTICE", p, target->server);
+ Utils->DoOneToOne(ServerInstance->Config->GetSID(), cmd, p, target->server);
}
diff --git a/src/modules/m_spanningtree/protocolinterface.h b/src/modules/m_spanningtree/protocolinterface.h
index 2b4c4371f..b48e45425 100644
--- a/src/modules/m_spanningtree/protocolinterface.h
+++ b/src/modules/m_spanningtree/protocolinterface.h
@@ -19,24 +19,16 @@
#pragma once
-class SpanningTreeUtilities;
-class ModuleSpanningTree;
-
class SpanningTreeProtocolInterface : public ProtocolInterface
{
- SpanningTreeUtilities* Utils;
public:
- SpanningTreeProtocolInterface(SpanningTreeUtilities* util) : Utils(util) { }
-
bool SendEncapsulatedData(const parameterlist &encap);
void SendMetaData(Extensible* target, const std::string &key, const std::string &data);
void SendTopic(Channel* channel, std::string &topic);
void SendMode(User* source, User* usertarget, Channel* chantarget, const parameterlist& modedata, const std::vector<TranslateType>& types);
void SendSNONotice(const std::string &snomask, const std::string &text);
void PushToClient(User* target, const std::string &rawline);
- void SendChannelPrivmsg(Channel* target, char status, const std::string &text);
- void SendChannelNotice(Channel* target, char status, const std::string &text);
- void SendUserPrivmsg(User* target, const std::string &text);
- void SendUserNotice(User* target, const std::string &text);
- void GetServerList(ProtoServerList &sl);
+ void SendMessage(Channel* target, char status, const std::string& text, MessageType msgtype);
+ void SendMessage(User* target, const std::string& text, MessageType msgtype);
+ void GetServerList(ServerList& sl);
};