X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/5ff8211bdcd5f110621c0ff01fa0854b5e6d9762..11422f8dd8d0bbd2a9316974a634e185ec18fd9f:/projects/stargazer/user_impl.h diff --git a/projects/stargazer/user_impl.h b/projects/stargazer/user_impl.h index 2fc2729e..2fc563df 100644 --- a/projects/stargazer/user_impl.h +++ b/projects/stargazer/user_impl.h @@ -68,9 +68,16 @@ public: void Notify(const int & oldPassive, const int & newPassive); private: - CHG_PASSIVE_NOTIFIER(const CHG_PASSIVE_NOTIFIER & rvalue); - CHG_PASSIVE_NOTIFIER & operator=(const CHG_PASSIVE_NOTIFIER & rvalue); + USER_IMPL * user; +}; +//----------------------------------------------------------------------------- +class CHG_DISABLED_NOTIFIER : public PROPERTY_NOTIFIER_BASE, + private NONCOPYABLE { +public: + CHG_DISABLED_NOTIFIER(USER_IMPL * u) : user(u) {} + void Notify(const int & oldValue, const int & newValue); +private: USER_IMPL * user; }; //----------------------------------------------------------------------------- @@ -81,9 +88,6 @@ public: void Notify(const std::string & oldTariff, const std::string & newTariff); private: - CHG_TARIFF_NOTIFIER(const CHG_TARIFF_NOTIFIER & rvalue); - CHG_TARIFF_NOTIFIER & operator=(const CHG_TARIFF_NOTIFIER & rvalue); - USER_IMPL * user; }; //----------------------------------------------------------------------------- @@ -94,18 +98,12 @@ public: void Notify(const double & oldCash, const double & newCash); private: - CHG_CASH_NOTIFIER(const CHG_CASH_NOTIFIER & rvalue); - CHG_CASH_NOTIFIER & operator=(const CHG_CASH_NOTIFIER & rvalue); - USER_IMPL * user; }; //----------------------------------------------------------------------------- class CHG_IPS_NOTIFIER : public PROPERTY_NOTIFIER_BASE, private NONCOPYABLE { public: - CHG_IPS_NOTIFIER(const CHG_IPS_NOTIFIER & rvalue); - CHG_IPS_NOTIFIER & operator=(const CHG_IPS_NOTIFIER & rvalue); - CHG_IPS_NOTIFIER(USER_IMPL * u) : user(u) {} void Notify(const USER_IPS & oldIPs, const USER_IPS & newIPs); @@ -115,6 +113,7 @@ private: //----------------------------------------------------------------------------- class USER_IMPL : public USER { friend class CHG_PASSIVE_NOTIFIER; +friend class CHG_DISABLED_NOTIFIER; friend class CHG_TARIFF_NOTIFIER; friend class CHG_CASH_NOTIFIER; friend class CHG_IPS_NOTIFIER; @@ -147,17 +146,17 @@ public: uint32_t GetCurrIP() const { return currIP; } time_t GetCurrIPModificationTime() const { return currIP.ModificationTime(); } - void AddCurrIPBeforeNotifier(PROPERTY_NOTIFIER_BASE *); - void DelCurrIPBeforeNotifier(PROPERTY_NOTIFIER_BASE *); + void AddCurrIPBeforeNotifier(CURR_IP_NOTIFIER * notifier); + void DelCurrIPBeforeNotifier(const CURR_IP_NOTIFIER * notifier); - void AddCurrIPAfterNotifier(PROPERTY_NOTIFIER_BASE *); - void DelCurrIPAfterNotifier(PROPERTY_NOTIFIER_BASE *); + void AddCurrIPAfterNotifier(CURR_IP_NOTIFIER * notifier); + void DelCurrIPAfterNotifier(const CURR_IP_NOTIFIER * notifier); - void AddConnectedBeforeNotifier(PROPERTY_NOTIFIER_BASE *); - void DelConnectedBeforeNotifier(PROPERTY_NOTIFIER_BASE *); + void AddConnectedBeforeNotifier(CONNECTED_NOTIFIER * notifier); + void DelConnectedBeforeNotifier(const CONNECTED_NOTIFIER * notifier); - void AddConnectedAfterNotifier(PROPERTY_NOTIFIER_BASE *); - void DelConnectedAfterNotifier(PROPERTY_NOTIFIER_BASE *); + void AddConnectedAfterNotifier(CONNECTED_NOTIFIER * notifier); + void DelConnectedAfterNotifier(const CONNECTED_NOTIFIER * notifier); int GetID() const { return id; } @@ -317,6 +316,7 @@ private: DIR_TRAFF sessionDownload; CHG_PASSIVE_NOTIFIER passiveNotifier; + CHG_DISABLED_NOTIFIER disabledNotifier; CHG_TARIFF_NOTIFIER tariffNotifier; CHG_CASH_NOTIFIER cashNotifier; CHG_IPS_NOTIFIER ipNotifier;