diff options
author | Adam <Adam@anope.org> | 2013-02-13 17:42:01 -0500 |
---|---|---|
committer | Adam <Adam@anope.org> | 2013-02-14 01:20:18 -0500 |
commit | 9e544a6443117861c3d6406e435043f1cf0f7099 (patch) | |
tree | e7449fb01e377576e8a09f386117d2c251de0596 /include/regchannel.h | |
parent | 225b7c38c127fbc6aac6724012f71c9483a4da77 (diff) |
Store what channels have references to accounts in NickCore to prevent having to iterate over all channels and then all access entries when nicks expire or from nickserv/alist
Diffstat (limited to 'include/regchannel.h')
-rw-r--r-- | include/regchannel.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/regchannel.h b/include/regchannel.h index 02d637800..ab369ce2b 100644 --- a/include/regchannel.h +++ b/include/regchannel.h @@ -159,6 +159,7 @@ class CoreExport ChannelInfo : public Serializable, public Extensible { private: Serialize::Reference<NickCore> founder; /* Channel founder */ + Serialize::Reference<NickCore> successor; /* Who gets the channel if the founder nick is dropped or expires */ Serialize::Checker<std::vector<ChanAccess *> > access; /* List of authorized users */ Serialize::Checker<std::vector<AutoKick *> > akick; /* List of users to kickban */ Serialize::Checker<std::vector<BadWord *> > badwords; /* List of badwords */ @@ -174,7 +175,6 @@ class CoreExport ChannelInfo : public Serializable, public Extensible Serialize::Checker<std::vector<LogSetting *> > log_settings; Anope::string name; /* Channel name */ - Serialize::Reference<NickCore> successor; /* Who gets the channel if the founder nick is dropped or expires */ Anope::string desc; time_t time_registered; @@ -223,6 +223,9 @@ class CoreExport ChannelInfo : public Serializable, public Extensible */ NickCore *GetFounder() const; + void SetSuccessor(NickCore *nc); + NickCore *GetSuccessor() const; + /** Find which bot should send mode/topic/etc changes for this channel * @return The bot */ |