From ca28f9cfcbff0fbdb2afe96f1427245f83db7c47 Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 1 Dec 2016 09:25:53 -0500 Subject: Allow objects to opt out of gc, don't gc accounts with users logged in Also store cached state with the field by using Serialize::Storage for field storage --- modules/hostserv/main/vhost.h | 12 ++++++------ modules/hostserv/request.cpp | 9 ++++----- 2 files changed, 10 insertions(+), 11 deletions(-) (limited to 'modules/hostserv') diff --git a/modules/hostserv/main/vhost.h b/modules/hostserv/main/vhost.h index 90ac9140f..bdc6509d7 100644 --- a/modules/hostserv/main/vhost.h +++ b/modules/hostserv/main/vhost.h @@ -25,12 +25,12 @@ class VHostImpl : public HostServ::VHost { friend class VHostType; - Serialize::Object *owner = nullptr; - Anope::string vident; - Anope::string vhost; - Anope::string creator; - time_t created = 0; - bool default_ = false; + Serialize::Storage owner; + Serialize::Storage vident; + Serialize::Storage vhost; + Serialize::Storage creator; + Serialize::Storage created; + Serialize::Storage default_; public: using HostServ::VHost::VHost; diff --git a/modules/hostserv/request.cpp b/modules/hostserv/request.cpp index 7b66eb59c..9508a9abc 100644 --- a/modules/hostserv/request.cpp +++ b/modules/hostserv/request.cpp @@ -24,15 +24,14 @@ class HostRequest : public Serialize::Object { friend class HostRequestType; - NickServ::Account *acc = nullptr; - Anope::string ident, host; - time_t time = 0; + Serialize::Storage acc; + Serialize::Storage ident, host; + Serialize::Storage time; public: static constexpr const char *const NAME = "hostrequest"; - HostRequest(Serialize::TypeBase *type) : Serialize::Object(type) { } - HostRequest(Serialize::TypeBase *type, Serialize::ID id) : Serialize::Object(type, id) { } + using Serialize::Object::Object; NickServ::Account *GetAccount(); void SetAccount(NickServ::Account *); -- cgit