]> git.stg.codes - stg.git/commitdiff
Стилистические правки и инициализация неинициализованных членов в
authorMaxim Mamontov <faust@gts.dp.ua>
Tue, 7 Dec 2010 15:10:21 +0000 (17:10 +0200)
committerMaxim Mamontov <faust@gts.dp.ua>
Tue, 7 Dec 2010 15:10:21 +0000 (17:10 +0200)
авторизаторе auth_ao

projects/stargazer/plugins/authorization/ao/ao.cpp
projects/stargazer/plugins/authorization/ao/ao.h

index 44631609db9509b83df1b47e13c58e9ec11c1b85..1690611bd44ad5c97c561499a935f3120841ba04 100644 (file)
@@ -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<user_iter>::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<int> BeforeChgAONotifier;
-CHG_AFTER_NOTIFIER<int>  AfterChgAONotifier;
+CHG_BEFORE_NOTIFIER<int> BeforeChgAONotifier(*this, u);
+CHG_AFTER_NOTIFIER<int>  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<USER_IPS> BeforeChgIPNotifier;
-CHG_AFTER_NOTIFIER<USER_IPS>  AfterChgIPNotifier;
+CHG_BEFORE_NOTIFIER<USER_IPS> BeforeChgIPNotifier(*this, u);
+CHG_AFTER_NOTIFIER<USER_IPS>  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 <typename varParamType>
 void CHG_BEFORE_NOTIFIER<varParamType>::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 <typename varParamType>
 void CHG_AFTER_NOTIFIER<varParamType>::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);
 }
 //-----------------------------------------------------------------------------
 
index f2912d14746ba36b6b2524e2353e39c44344b03a..2a9ff3e0a52c129f49a984d578ab6b965fdfc1fc 100644 (file)
@@ -45,28 +45,30 @@ template <typename varParamType>
 class CHG_BEFORE_NOTIFIER: public PROPERTY_NOTIFIER_BASE<varParamType>
 {
 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 <typename varParamType>
 class CHG_AFTER_NOTIFIER: public PROPERTY_NOTIFIER_BASE<varParamType>
 {
 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<user_iter>
     {
     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<user_iter>
     {
     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;
 
 };