summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/protocolinterface.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-04-04 12:30:38 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-04-04 12:30:38 +0000
commite48c7e038abe2954ecec30f465c811f017793332 (patch)
treef92dde2e2a533f92f4fc342890627581793bcc3a /src/modules/m_spanningtree/protocolinterface.cpp
parent04dbe9ccc53fac455310ab9eca117a838b6d1d4c (diff)
Add basic stuff for protocol interface and implement a couple of the methods. It's all in ServerInstance->PI for calls from other modules/the core
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9297 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_spanningtree/protocolinterface.cpp')
-rw-r--r--src/modules/m_spanningtree/protocolinterface.cpp64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree/protocolinterface.cpp b/src/modules/m_spanningtree/protocolinterface.cpp
new file mode 100644
index 000000000..cf774d603
--- /dev/null
+++ b/src/modules/m_spanningtree/protocolinterface.cpp
@@ -0,0 +1,64 @@
+#include "inspircd.h"
+#include "m_spanningtree/main.h"
+#include "m_spanningtree/utils.h"
+#include "m_spanningtree/protocolinterface.h"
+
+void SpanningTreeProtocolInterface::SendEncapsulatedData(parameterlist &encap)
+{
+ Utils->DoOneToMany(ServerInstance->Config->GetSID(), "ENCAP", encap);
+}
+
+void SpanningTreeProtocolInterface::SendMetaData(void* target, int type, const std::string &key, const std::string &data)
+{
+ parameterlist params;
+
+ switch (type)
+ {
+ case TYPE_USER:
+ params.push_back(((User*)target)->uuid);
+ break;
+ case TYPE_CHANNEL:
+ params.push_back(((Channel*)target)->name);
+ break;
+ case TYPE_SERVER:
+ params.push_back(ServerInstance->Config->GetSID());
+ break;
+ }
+ params.push_back(key);
+ params.push_back(":" + data);
+
+ Utils->DoOneToMany(ServerInstance->Config->GetSID(),"METADATA",params);
+}
+
+void SpanningTreeProtocolInterface::SendTopic(Channel* channel, std::string &topic)
+{
+ parameterlist params;
+
+ params.push_back(channel->name);
+ params.push_back(ConvToStr(ServerInstance->Time()));
+ params.push_back(ServerInstance->Config->ServerName);
+ params.push_back(":" + topic);
+
+ Utils->DoOneToMany(ServerInstance->Config->GetSID(),"FTOPIC", params);
+}
+
+void SpanningTreeProtocolInterface::SendMode(const std::string &origin, const std::string &target, parameterlist &modedata)
+{
+}
+
+void SpanningTreeProtocolInterface::SendOperNotice(const std::string &text)
+{
+}
+
+void SpanningTreeProtocolInterface::SendModeNotice(const std::string &modes, const std::string &text)
+{
+}
+
+void SpanningTreeProtocolInterface::SendSNONotice(const std::string &snomask, const std::string &text)
+{
+}
+
+void SpanningTreeProtocolInterface::PushToClient(User* target, const std::string &rawline)
+{
+}
+