diff options
| author | Adam <Adam@anope.org> | 2017-02-07 17:20:07 -0500 |
|---|---|---|
| committer | Adam <Adam@anope.org> | 2017-02-07 17:20:07 -0500 |
| commit | 09dca29c8898916772c2a2a6b86b625c812007ed (patch) | |
| tree | 1b28f4751feec3ea2b46fa0afb061da7926f3a47 /modules/chanserv/main | |
| parent | 8b694bc392c36551e428b84454efb81cdbc8bcd3 (diff) | |
Normalize databases by not allowing generic Object references
Remove redis database support
Diffstat (limited to 'modules/chanserv/main')
| -rw-r--r-- | modules/chanserv/main/chanaccess.cpp | 16 | ||||
| -rw-r--r-- | modules/chanserv/main/chanaccesstype.h | 4 |
2 files changed, 6 insertions, 14 deletions
diff --git a/modules/chanserv/main/chanaccess.cpp b/modules/chanserv/main/chanaccess.cpp index 75c70ed9c..f2b170989 100644 --- a/modules/chanserv/main/chanaccess.cpp +++ b/modules/chanserv/main/chanaccess.cpp @@ -71,14 +71,14 @@ void ChanAccessImpl::SetMask(const Anope::string &n) Object::Set(&ChanAccessType<ChanServ::ChanAccess>::mask, n); } -Serialize::Object *ChanAccessImpl::GetObj() +NickServ::Account *ChanAccessImpl::GetAccount() { - return Get(&ChanAccessType<ChanServ::ChanAccess>::obj); + return Get(&ChanAccessType<ChanServ::ChanAccess>::account); } -void ChanAccessImpl::SetObj(Serialize::Object *o) +void ChanAccessImpl::SetAccount(NickServ::Account *acc) { - Object::Set(&ChanAccessType<ChanServ::ChanAccess>::obj, o); + Object::Set(&ChanAccessType<ChanServ::ChanAccess>::account, acc); } Anope::string ChanAccessImpl::Mask() @@ -89,14 +89,6 @@ Anope::string ChanAccessImpl::Mask() return GetMask(); } -NickServ::Account *ChanAccessImpl::GetAccount() -{ - if (!GetObj() || GetObj()->GetSerializableType()->GetName() != NickServ::Account::NAME) - return nullptr; - - return anope_dynamic_static_cast<NickServ::Account *>(GetObj()); -} - bool ChanAccessImpl::Matches(const User *u, NickServ::Account *acc) { if (this->GetAccount()) diff --git a/modules/chanserv/main/chanaccesstype.h b/modules/chanserv/main/chanaccesstype.h index b93747be7..4d95ee8b7 100644 --- a/modules/chanserv/main/chanaccesstype.h +++ b/modules/chanserv/main/chanaccesstype.h @@ -25,7 +25,7 @@ class ChanAccessType : public Serialize::Type<T> public: Serialize::ObjectField<ChanServ::ChanAccess, ChanServ::Channel *> channel; Serialize::Field<ChanServ::ChanAccess, Anope::string> mask; - Serialize::ObjectField<ChanServ::ChanAccess, Serialize::Object *> obj; + Serialize::ObjectField<ChanServ::ChanAccess, NickServ::Account *> account; Serialize::Field<ChanServ::ChanAccess, Anope::string> creator; Serialize::Field<ChanServ::ChanAccess, time_t> last_seen; Serialize::Field<ChanServ::ChanAccess, time_t> created; @@ -33,7 +33,7 @@ class ChanAccessType : public Serialize::Type<T> ChanAccessType(Module *me) : Serialize::Type<T>(me) , channel(this, "channel", &ChanServ::ChanAccess::channel, true) , mask(this, "mask", &ChanServ::ChanAccess::mask) - , obj(this, "obj", &ChanServ::ChanAccess::object, true) + , account(this, "account", &ChanServ::ChanAccess::account, true) , creator(this, "creator", &ChanServ::ChanAccess::creator) , last_seen(this, "last_seen", &ChanServ::ChanAccess::last_seen) , created(this, "created", &ChanServ::ChanAccess::created) |
