summaryrefslogtreecommitdiff
path: root/modules/database
diff options
context:
space:
mode:
Diffstat (limited to 'modules/database')
-rw-r--r--modules/database/db_flatfile.cpp15
-rw-r--r--modules/database/db_old.cpp13
-rw-r--r--modules/database/db_redis.cpp13
-rw-r--r--modules/database/db_sql.cpp21
-rw-r--r--modules/database/db_sql_live.cpp16
5 files changed, 70 insertions, 8 deletions
diff --git a/modules/database/db_flatfile.cpp b/modules/database/db_flatfile.cpp
index c4b2254c8..50f1412b1 100644
--- a/modules/database/db_flatfile.cpp
+++ b/modules/database/db_flatfile.cpp
@@ -103,6 +103,11 @@ class LoadData : public Serialize::Data
};
class DBFlatFile : public Module, public Pipe
+ , public EventHook<Event::Restart>
+ , public EventHook<Event::Shutdown>
+ , public EventHook<Event::LoadDatabase>
+ , public EventHook<Event::SaveDatabase>
+ , public EventHook<Event::SerializeTypeCreate>
{
/* Day the last backup was on */
int last_day;
@@ -167,7 +172,15 @@ class DBFlatFile : public Module, public Pipe
}
public:
- DBFlatFile(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR), last_day(0), loaded(false), child_pid(-1)
+ DBFlatFile(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR)
+ , EventHook<Event::Restart>("OnRestart")
+ , EventHook<Event::Shutdown>("OnShutdown")
+ , EventHook<Event::LoadDatabase>("OnLoadDatabase")
+ , EventHook<Event::SaveDatabase>("OnSaveDatabase")
+ , EventHook<Event::SerializeTypeCreate>("OnSerializeTypeCreate")
+ , last_day(0)
+ , loaded(false)
+ , child_pid(-1)
{
}
diff --git a/modules/database/db_old.cpp b/modules/database/db_old.cpp
index 82f26e064..f80d55d5a 100644
--- a/modules/database/db_old.cpp
+++ b/modules/database/db_old.cpp
@@ -1294,16 +1294,21 @@ static void LoadNews()
}
class DBOld : public Module
+ , public EventHook<Event::LoadDatabase>
+ , public EventHook<Event::UplinkSync>
{
PrimitiveExtensibleItem<uint32_t> mlock_on, mlock_off, mlock_limit;
PrimitiveExtensibleItem<Anope::string> mlock_key;
public:
- DBOld(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR),
- mlock_on(this, "mlock_on"), mlock_off(this, "mlock_off"), mlock_limit(this, "mlock_limit"), mlock_key(this, "mlock_key")
+ DBOld(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR)
+ , EventHook<Event::LoadDatabase>("OnLoadDatabase")
+ , EventHook<Event::UplinkSync>("OnUplinkSync")
+ , mlock_on(this, "mlock_on")
+ , mlock_off(this, "mlock_off")
+ , mlock_limit(this, "mlock_limit")
+ , mlock_key(this, "mlock_key")
{
-
-
hashm = Config->GetModule(this)->Get<const Anope::string>("hash");
if (hashm != "md5" && hashm != "oldmd5" && hashm != "sha1" && hashm != "plain" && hashm != "sha256")
diff --git a/modules/database/db_redis.cpp b/modules/database/db_redis.cpp
index d7585bc32..81b1f083f 100644
--- a/modules/database/db_redis.cpp
+++ b/modules/database/db_redis.cpp
@@ -121,6 +121,11 @@ class SubscriptionListener : public Interface
};
class DatabaseRedis : public Module, public Pipe
+ , public EventHook<Event::LoadDatabase>
+ , public EventHook<Event::SerializeTypeCreate>
+ , public EventHook<Event::SerializableConstruct>
+ , public EventHook<Event::SerializableDestruct>
+ , public EventHook<Event::SerializableUpdate>
{
SubscriptionListener sl;
std::set<Serializable *> updated_items;
@@ -128,7 +133,13 @@ class DatabaseRedis : public Module, public Pipe
public:
ServiceReference<Provider> redis;
- DatabaseRedis(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR), sl(this)
+ DatabaseRedis(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR)
+ , EventHook<Event::LoadDatabase>("OnLoadDatabase")
+ , EventHook<Event::SerializeTypeCreate>("OnSerializeTypeCreate")
+ , EventHook<Event::SerializableConstruct>("OnSerializableConstruct")
+ , EventHook<Event::SerializableDestruct>("OnSerializableDestruct")
+ , EventHook<Event::SerializableUpdate>("OnSerializableUpdate")
+ , sl(this)
{
me = this;
diff --git a/modules/database/db_sql.cpp b/modules/database/db_sql.cpp
index 34ae7cfea..5d213cb9a 100644
--- a/modules/database/db_sql.cpp
+++ b/modules/database/db_sql.cpp
@@ -55,6 +55,13 @@ public:
};
class DBSQL : public Module, public Pipe
+ , public EventHook<Event::Shutdown>
+ , public EventHook<Event::Restart>
+ , public EventHook<Event::LoadDatabase>
+ , public EventHook<Event::SerializableConstruct>
+ , public EventHook<Event::SerializableDestruct>
+ , public EventHook<Event::SerializableUpdate>
+ , public EventHook<Event::SerializeTypeCreate>
{
ServiceReference<Provider> sql;
SQLSQLInterface sqlinterface;
@@ -89,7 +96,19 @@ class DBSQL : public Module, public Pipe
}
public:
- DBSQL(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR), sql("", ""), sqlinterface(this), shutting_down(false), loading_databases(false), loaded(false), imported(false)
+ DBSQL(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR)
+ , EventHook<Event::Shutdown>("OnShutdown")
+ , EventHook<Event::Restart>("OnRestart")
+ , EventHook<Event::LoadDatabase>("OnLoadDatabase")
+ , EventHook<Event::SerializableConstruct>("OnSerializableConstruct")
+ , EventHook<Event::SerializableDestruct>("OnSerializableDestruct")
+ , EventHook<Event::SerializableUpdate>("OnSerializableUpdate")
+ , EventHook<Event::SerializeTypeCreate>("OnSerializeTypeCreate")
+ , sqlinterface(this)
+ , shutting_down(false)
+ , loading_databases(false)
+ , loaded(false)
+ , imported(false)
{
diff --git a/modules/database/db_sql_live.cpp b/modules/database/db_sql_live.cpp
index 0099ff5e2..ad10f0a7d 100644
--- a/modules/database/db_sql_live.cpp
+++ b/modules/database/db_sql_live.cpp
@@ -4,6 +4,13 @@
using namespace SQL;
class DBMySQL : public Module, public Pipe
+ , public EventHook<Event::LoadDatabase>
+ , public EventHook<Event::Shutdown>
+ , public EventHook<Event::Restart>
+ , public EventHook<Event::SerializableConstruct>
+ , public EventHook<Event::SerializableDestruct>
+ , public EventHook<Event::SerializeCheck>
+ , public EventHook<Event::SerializableUpdate>
{
private:
Anope::string prefix;
@@ -64,7 +71,14 @@ class DBMySQL : public Module, public Pipe
}
public:
- DBMySQL(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR), SQL("", "")
+ DBMySQL(const Anope::string &modname, const Anope::string &creator) : Module(modname, creator, DATABASE | VENDOR)
+ , EventHook<Event::LoadDatabase>("OnLoadDatabase")
+ , EventHook<Event::Shutdown>("OnShutdown")
+ , EventHook<Event::Restart>("OnRestart")
+ , EventHook<Event::SerializableConstruct>("OnSerializableConstruct")
+ , EventHook<Event::SerializableDestruct>("OnSerializableDestruct")
+ , EventHook<Event::SerializeCheck>("OnSerializeCheck")
+ , EventHook<Event::SerializableUpdate>("OnSerializableUpdate")
{
this->lastwarn = 0;
this->ro = false;