From: Maxim Mamontov Date: Tue, 7 Dec 2010 15:10:21 +0000 (+0200) Subject: Стилистические правки и инициализация неинициализованных членов в X-Git-Tag: 2.407-rc3~336 X-Git-Url: https://git.stg.codes/stg.git/commitdiff_plain/2a3474ec97141c99dea75c517615f1332edfc4de Стилистические правки и инициализация неинициализованных членов в авторизаторе auth_ao --- diff --git a/projects/stargazer/plugins/authorization/ao/ao.cpp b/projects/stargazer/plugins/authorization/ao/ao.cpp index 44631609..1690611b 100644 --- a/projects/stargazer/plugins/authorization/ao/ao.cpp +++ b/projects/stargazer/plugins/authorization/ao/ao.cpp @@ -85,8 +85,11 @@ return "Always Online authorizator v.1.0"; } //----------------------------------------------------------------------------- AUTH_AO::AUTH_AO() + : users(NULL), + isRunning(false), + onAddUserNotifier(*this), + onDelUserNotifier(*this) { -isRunning = false; } //----------------------------------------------------------------------------- void AUTH_AO::SetUsers(USERS * u) @@ -115,8 +118,8 @@ GetUsers(); list::iterator users_iter; -onAddUserNotifier.SetAuthorizator(this); -onDelUserNotifier.SetAuthorizator(this); +/*onAddUserNotifier.SetAuthorizator(this); +onDelUserNotifier.SetAuthorizator(this);*/ users->AddNotifierUserAdd(&onAddUserNotifier); users->AddNotifierUserDel(&onDelUserNotifier); @@ -168,15 +171,15 @@ return 70; void AUTH_AO::SetUserNotifiers(user_iter u) { // ---------- AlwaysOnline ------------------- -CHG_BEFORE_NOTIFIER BeforeChgAONotifier; -CHG_AFTER_NOTIFIER AfterChgAONotifier; +CHG_BEFORE_NOTIFIER BeforeChgAONotifier(*this, u); +CHG_AFTER_NOTIFIER AfterChgAONotifier(*this, u); -BeforeChgAONotifier.SetAuthorizator(this); -BeforeChgAONotifier.SetUser(u); +/*BeforeChgAONotifier.SetAuthorizator(this); +BeforeChgAONotifier.SetUser(u);*/ BeforeChgAONotifierList.push_front(BeforeChgAONotifier); -AfterChgAONotifier.SetAuthorizator(this); -AfterChgAONotifier.SetUser(u); +/*AfterChgAONotifier.SetAuthorizator(this); +AfterChgAONotifier.SetUser(u);*/ AfterChgAONotifierList.push_front(AfterChgAONotifier); u->property.alwaysOnline.AddBeforeNotifier(&(*BeforeChgAONotifierList.begin())); @@ -184,15 +187,15 @@ u->property.alwaysOnline.AddAfterNotifier(&(*AfterChgAONotifierList.begin())); // ---------- AlwaysOnline end --------------- // ---------- IP ------------------- -CHG_BEFORE_NOTIFIER BeforeChgIPNotifier; -CHG_AFTER_NOTIFIER AfterChgIPNotifier; +CHG_BEFORE_NOTIFIER BeforeChgIPNotifier(*this, u); +CHG_AFTER_NOTIFIER AfterChgIPNotifier(*this, u); -BeforeChgIPNotifier.SetAuthorizator(this); -BeforeChgIPNotifier.SetUser(u); +/*BeforeChgIPNotifier.SetAuthorizator(this); +BeforeChgIPNotifier.SetUser(u);*/ BeforeChgIPNotifierList.push_front(BeforeChgIPNotifier); -AfterChgIPNotifier.SetAuthorizator(this); -AfterChgIPNotifier.SetUser(u); +/*AfterChgIPNotifier.SetAuthorizator(this); +AfterChgIPNotifier.SetUser(u);*/ AfterChgIPNotifierList.push_front(AfterChgIPNotifier); u->property.ips.AddBeforeNotifier(&(*BeforeChgIPNotifierList.begin())); @@ -336,13 +339,13 @@ return -1; template void CHG_BEFORE_NOTIFIER::Notify(const varParamType &, const varParamType &) { -EVENT_LOOP_SINGLETON::GetInstance().Enqueue(*auth, &AUTH_AO::Unauthorize, user); +EVENT_LOOP_SINGLETON::GetInstance().Enqueue(auth, &AUTH_AO::Unauthorize, user); } //----------------------------------------------------------------------------- template void CHG_AFTER_NOTIFIER::Notify(const varParamType &, const varParamType &) { -EVENT_LOOP_SINGLETON::GetInstance().Enqueue(*auth, &AUTH_AO::UpdateUserAuthorization, user); +EVENT_LOOP_SINGLETON::GetInstance().Enqueue(auth, &AUTH_AO::UpdateUserAuthorization, user); } //----------------------------------------------------------------------------- diff --git a/projects/stargazer/plugins/authorization/ao/ao.h b/projects/stargazer/plugins/authorization/ao/ao.h index f2912d14..2a9ff3e0 100644 --- a/projects/stargazer/plugins/authorization/ao/ao.h +++ b/projects/stargazer/plugins/authorization/ao/ao.h @@ -45,28 +45,30 @@ template class CHG_BEFORE_NOTIFIER: public PROPERTY_NOTIFIER_BASE { public: + CHG_BEFORE_NOTIFIER(AUTH_AO & a, user_iter u) : user(u), auth(a) {} void Notify(const varParamType & oldValue, const varParamType & newValue); - void SetUser(user_iter u) { user = u; } + //void SetUser(user_iter u) { user = u; } user_iter GetUser() {return user; } - void SetAuthorizator(const AUTH_AO * a) { auth = a; } + //void SetAuthorizator(const AUTH_AO * a) { auth = a; } private: user_iter user; - const AUTH_AO * auth; + const AUTH_AO & auth; }; //----------------------------------------------------------------------------- template class CHG_AFTER_NOTIFIER: public PROPERTY_NOTIFIER_BASE { public: + CHG_AFTER_NOTIFIER(AUTH_AO & a, user_iter u) : user(u), auth(a) {} void Notify(const varParamType & oldValue, const varParamType & newValue); - void SetUser(user_iter u) { user = u; } + //void SetUser(user_iter u) { user = u; } user_iter GetUser() {return user; } - void SetAuthorizator(const AUTH_AO * a) { auth = a; } + //void SetAuthorizator(const AUTH_AO * a) { auth = a; } private: user_iter user; - const AUTH_AO * auth; + const AUTH_AO & auth; }; //----------------------------------------------------------------------------- class AUTH_AO_SETTINGS @@ -136,33 +138,33 @@ private: class ADD_USER_NONIFIER: public NOTIFIER_BASE { public: - ADD_USER_NONIFIER(){}; + ADD_USER_NONIFIER(AUTH_AO & a) : auth(a) {}; virtual ~ADD_USER_NONIFIER(){}; - void SetAuthorizator(AUTH_AO * a) { auth = a; } + //void SetAuthorizator(AUTH_AO * a) { auth = a; } void Notify(const user_iter & user) { - auth->AddUser(user); + auth.AddUser(user); } private: - AUTH_AO * auth; + AUTH_AO & auth; } onAddUserNotifier; class DEL_USER_NONIFIER: public NOTIFIER_BASE { public: - DEL_USER_NONIFIER(){}; + DEL_USER_NONIFIER(AUTH_AO & a) : auth(a) {}; virtual ~DEL_USER_NONIFIER(){}; - void SetAuthorizator(AUTH_AO * a) { auth = a; } + //void SetAuthorizator(AUTH_AO * a) { auth = a; } void Notify(const user_iter & user) { - auth->DelUser(user); + auth.DelUser(user); } private: - AUTH_AO * auth; + AUTH_AO & auth; } onDelUserNotifier; };