]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/extra/m_sqlite3.cpp
Update the module descriptions using mkversion.
[user/henk/code/inspircd.git] / src / modules / extra / m_sqlite3.cpp
index b468100623b12e263c93d03a11cf4469089b4c9e..932d427d2451a8f9768438b575ddaaa74aa9773c 100644 (file)
@@ -1,10 +1,16 @@
 /*
  * InspIRCd -- Internet Relay Chat Daemon
  *
- *   Copyright (C) 2009-2010 Daniel De Graaf <danieldg@inspircd.org>
- *   Copyright (C) 2007-2009 Dennis Friis <peavey@inspircd.org>
- *   Copyright (C) 2007, 2009 Craig Edwards <craigedwards@brainbox.cc>
- *   Copyright (C) 2008 Pippijn van Steenhoven <pip88nl@gmail.com>
+ *   Copyright (C) 2019 linuxdaemon <linuxdaemon.irc@gmail.com>
+ *   Copyright (C) 2015 Daniel Vassdal <shutter@canternet.org>
+ *   Copyright (C) 2013-2014, 2016-2019 Sadie Powell <sadie@witchery.services>
+ *   Copyright (C) 2013-2014, 2016 Attila Molnar <attilamolnar@hush.com>
+ *   Copyright (C) 2012, 2019 Robby <robby@chatbelgie.be>
+ *   Copyright (C) 2012, 2016 Adam <Adam@anope.org>
+ *   Copyright (C) 2012 ChrisTX <xpipe@hotmail.de>
+ *   Copyright (C) 2010 Daniel De Graaf <danieldg@inspircd.org>
+ *   Copyright (C) 2007, 2009 Craig Edwards <brain@inspircd.org>
+ *   Copyright (C) 2007 Dennis Friis <peavey@inspircd.org>
  *
  * This file is part of InspIRCd.  InspIRCd is free software: you can
  * redistribute it and/or modify it under the terms of the GNU General Public
@@ -22,6 +28,7 @@
 /// $CompilerFlags: find_compiler_flags("sqlite3")
 /// $LinkerFlags: find_linker_flags("sqlite3" "-lsqlite3")
 
+/// $PackageInfo: require_system("arch") pkgconf sqlite
 /// $PackageInfo: require_system("centos") pkgconfig sqlite-devel
 /// $PackageInfo: require_system("darwin") pkg-config sqlite3
 /// $PackageInfo: require_system("debian") libsqlite3-dev pkg-config
 #include "inspircd.h"
 #include "modules/sql.h"
 
+#ifdef __GNUC__
+# pragma GCC diagnostic push
+#endif
+
 // Fix warnings about the use of `long long` on C++03.
 #if defined __clang__
 # pragma clang diagnostic ignored "-Wc++11-long-long"
 
 #include <sqlite3.h>
 
+#ifdef __GNUC__
+# pragma GCC diagnostic pop
+#endif
+
 #ifdef _WIN32
 # pragma comment(lib, "sqlite3.lib")
 #endif
@@ -103,7 +118,9 @@ class SQLConn : public SQL::Provider
        reference<ConfigTag> config;
 
  public:
-       SQLConn(Module* Parent, ConfigTag* tag) : SQL::Provider(Parent, "SQL/" + tag->getString("id")), config(tag)
+       SQLConn(Module* Parent, ConfigTag* tag)
+               : SQL::Provider(Parent, tag->getString("id"))
+               , config(tag)
        {
                std::string host = tag->getString("hostname");
                if (sqlite3_open_v2(host.c_str(), &conn, SQLITE_OPEN_READWRITE, 0) != SQLITE_OK)
@@ -174,6 +191,7 @@ class SQLConn : public SQL::Provider
 
        void Submit(SQL::Query* query, const std::string& q) CXX11_OVERRIDE
        {
+               ServerInstance->Logs->Log(MODNAME, LOG_DEBUG, "Executing SQLite3 query: " + q);
                Query(query, q);
                delete query;
        }
@@ -254,7 +272,7 @@ class ModuleSQLite3 : public Module
                ConfigTagList tags = ServerInstance->Config->ConfTags("database");
                for(ConfigIter i = tags.first; i != tags.second; i++)
                {
-                       if (!stdalgo::string::equalsci(i->second->getString("provider"), "sqlite"))
+                       if (!stdalgo::string::equalsci(i->second->getString("module"), "sqlite"))
                                continue;
                        SQLConn* conn = new SQLConn(this, i->second);
                        conns.insert(std::make_pair(i->second->getString("id"), conn));
@@ -264,7 +282,7 @@ class ModuleSQLite3 : public Module
 
        Version GetVersion() CXX11_OVERRIDE
        {
-               return Version("sqlite3 provider", VF_VENDOR);
+               return Version("Provides the ability for SQL modules to query a SQLite 3 database.", VF_VENDOR);
        }
 };