diff options
Diffstat (limited to 'modules/database')
-rw-r--r-- | modules/database/db_flatfile.cpp | 15 | ||||
-rw-r--r-- | modules/database/db_old.cpp | 13 | ||||
-rw-r--r-- | modules/database/db_redis.cpp | 13 | ||||
-rw-r--r-- | modules/database/db_sql.cpp | 21 | ||||
-rw-r--r-- | modules/database/db_sql_live.cpp | 16 |
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; |