]> git.stg.codes - stg.git/blobdiff - projects/stargazer/tariffs_impl.cpp
More subscriptions, less notifiers.
[stg.git] / projects / stargazer / tariffs_impl.cpp
index 492f403f7780764383be17750ce601e54bcb8f8d..116570d3253eb7e340a80125ace303059f149ca9 100644 (file)
@@ -175,12 +175,7 @@ TariffData td;
     tariffs.erase(ti);
     }
 
-auto ni = onDelNotifiers.begin();
-while (ni != onDelNotifiers.end())
-    {
-    (*ni)->notify(td);
-    ++ni;
-    }
+m_onDelCallbacks.notify(td);
 
 WriteServLog("%s Tariff \'%s\' deleted.",
              admin->logStr().c_str(),
@@ -223,13 +218,7 @@ if (store->AddTariff(name) < 0)
     return -1;
     }
 
-// Fire all "on add" notifiers
-auto ni = onAddNotifiers.begin();
-while (ni != onAddNotifiers.end())
-    {
-    (*ni)->notify(tariffs.back().GetTariffData());
-    ++ni;
-    }
+m_onAddCallbacks.notify(tariffs.back().GetTariffData());
 
 WriteServLog("%s Tariff \'%s\' added.",
                  admin->logStr().c_str(), name.c_str());
@@ -249,27 +238,3 @@ for (; it != tariffs.end(); ++it)
     }
 }
 //-----------------------------------------------------------------------------
-void TariffsImpl::AddNotifierAdd(NotifierBase<TariffData> * n)
-{
-std::lock_guard<std::mutex> lock(m_mutex);
-onAddNotifiers.insert(n);
-}
-//-----------------------------------------------------------------------------
-void TariffsImpl::DelNotifierAdd(NotifierBase<TariffData> * n)
-{
-std::lock_guard<std::mutex> lock(m_mutex);
-onAddNotifiers.erase(n);
-}
-//-----------------------------------------------------------------------------
-void TariffsImpl::AddNotifierDel(NotifierBase<TariffData> * n)
-{
-std::lock_guard<std::mutex> lock(m_mutex);
-onDelNotifiers.insert(n);
-}
-//-----------------------------------------------------------------------------
-void TariffsImpl::DelNotifierDel(NotifierBase<TariffData> * n)
-{
-std::lock_guard<std::mutex> lock(m_mutex);
-onDelNotifiers.erase(n);
-}
-//-----------------------------------------------------------------------------