From 69dfc729e99f45f16cab37f81b9f09a659d99a24 Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 17 Nov 2011 12:46:18 -0500 Subject: Fixed storing mode locks --- include/access.h | 1 + include/account.h | 2 ++ include/bots.h | 1 + include/oper.h | 3 +-- include/regchannel.h | 8 +++++--- include/serialize.h | 14 ++------------ include/services.h | 2 ++ 7 files changed, 14 insertions(+), 17 deletions(-) (limited to 'include') diff --git a/include/access.h b/include/access.h index efc4791ca..b993ee0d8 100644 --- a/include/access.h +++ b/include/access.h @@ -50,6 +50,7 @@ class CoreExport ChanAccess : public Serializable ChanAccess(AccessProvider *p); virtual ~ChanAccess(); + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); diff --git a/include/account.h b/include/account.h index 2d12c99cb..516bcace5 100644 --- a/include/account.h +++ b/include/account.h @@ -116,6 +116,7 @@ class CoreExport NickAlias : public Extensible, public Flags aliases; /* List of aliases */ + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); diff --git a/include/bots.h b/include/bots.h index 00c0c87a1..c2cef7307 100644 --- a/include/bots.h +++ b/include/bots.h @@ -57,6 +57,7 @@ class CoreExport BotInfo : public User, public Flags, public Se */ virtual ~BotInfo(); + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); diff --git a/include/oper.h b/include/oper.h index 62f783282..19d00f40d 100644 --- a/include/oper.h +++ b/include/oper.h @@ -13,8 +13,6 @@ class XLineManager; class CoreExport XLine : public Serializable { - protected: - XLine(); public: Anope::string Mask; Anope::string By; @@ -33,6 +31,7 @@ class CoreExport XLine : public Serializable Anope::string GetHost() const; sockaddrs GetIP() const; + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &data); }; diff --git a/include/regchannel.h b/include/regchannel.h index 3f6c29581..48df1ae7d 100644 --- a/include/regchannel.h +++ b/include/regchannel.h @@ -81,7 +81,7 @@ struct CoreExport BadWord : Serializable Anope::string word; BadWordType type; - BadWord(); + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); }; @@ -111,13 +111,13 @@ class CoreExport AutoKick : public Flags, public Serializable time_t addtime; time_t last_used; + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); }; struct CoreExport ModeLock : Serializable { - ModeLock(); public: ChannelInfo *ci; bool set; @@ -128,6 +128,7 @@ struct CoreExport ModeLock : Serializable ModeLock(ChannelInfo *ch, bool s, ChannelModeName n, const Anope::string &p, const Anope::string &se = "", time_t c = Anope::CurTime); + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); }; @@ -145,7 +146,7 @@ struct CoreExport LogSetting : Serializable Anope::string creator; time_t created; - LogSetting(); + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); }; @@ -204,6 +205,7 @@ class CoreExport ChannelInfo : public Extensible, public Flags *serizliable_items; - Anope::string serizliable_name; std::list::iterator s_iter; - Serializable() - { - throw CoreException(); - } - protected: - Serializable(const Anope::string &n) : serizliable_name(n) + Serializable() { if (serizliable_items == NULL) serizliable_items = new std::list(); @@ -104,11 +98,7 @@ class CoreExport Serializable public: typedef std::map serialized_data; - const Anope::string &GetSerializeName() - { - return this->serizliable_name; - } - + virtual Anope::string serialize_name() const = 0; virtual serialized_data serialize() = 0; static const std::list &GetItems() diff --git a/include/services.h b/include/services.h index c6cb6aa57..06596db5d 100644 --- a/include/services.h +++ b/include/services.h @@ -505,6 +505,8 @@ class CoreExport Memo : public Flags, public Serializable { public: Memo(); + + Anope::string serialize_name() const; serialized_data serialize(); static void unserialize(serialized_data &); -- cgit