diff options
Diffstat (limited to 'configmgr/source/treecache/cachemulticaster.hxx')
-rw-r--r-- | configmgr/source/treecache/cachemulticaster.hxx | 42 |
1 files changed, 18 insertions, 24 deletions
diff --git a/configmgr/source/treecache/cachemulticaster.hxx b/configmgr/source/treecache/cachemulticaster.hxx index 7500cd7cbc..6fcb7fc13b 100644 --- a/configmgr/source/treecache/cachemulticaster.hxx +++ b/configmgr/source/treecache/cachemulticaster.hxx @@ -28,64 +28,58 @@ * ************************************************************************/ -/* PLEASE DON'T DELETE ANY COMMENT LINES, ALSO IT'S UNNECESSARY. */ - - #ifndef CONFIGMGR_BACKEND_CACHEMULTICASTER_HXX #define CONFIGMGR_BACKEND_CACHEMULTICASTER_HXX -#include "cacheddataprovider.hxx" -#include <osl/mutex.hxx> +#include "sal/config.h" -#ifndef INCLUDED_LIST #include <list> -#define INCLUDED_LIST -#endif + +#include "osl/mutex.hxx" +#include "rtl/ref.hxx" + +#include "utility.hxx" namespace configmgr { -// --------------------------------------------------------------------------- + class TreeManager; + namespace backend { + class ComponentRequest; + class UpdateRequest; // --------------------------------------------------------------------------- /** Interface providing a multicasting service for changes to the cache - managed by a <type>ICachedDataProvider</type> + managed by a <type>CacheController</type> */ - class CacheChangeMulticaster : public ICachedDataNotifier + class CacheChangeMulticaster { public: CacheChangeMulticaster(); virtual ~CacheChangeMulticaster(); - // ICachedDataNotifier implementation - public: - /// notify all registered listeners and close down this notifier - virtual void dispose(ICachedDataProvider & _rProvider) CFG_NOTHROW(); - /** notify a new component to all registered listeners. <p> Must be called after the component has been created in the cache.</p> */ - virtual void notifyCreated(ComponentRequest const & _aComponentName) CFG_NOTHROW(); + void notifyCreated(ComponentRequest const & _aComponentName) SAL_THROW(()); /** notify changed data to all registered listeners. <p> Must be called after the change has been applied to the cache and before any subsequent changes to the same component.</p> */ - virtual void notifyChanged(UpdateRequest const & _anUpdate) CFG_NOTHROW(); + void notifyChanged(UpdateRequest const & _anUpdate) SAL_THROW(()); // notification support. /// register a listener for observing changes to the cached data - virtual void addListener(ListenerRef _xListener) CFG_NOTHROW(); + void addListener(rtl::Reference<TreeManager> _xListener) SAL_THROW(()); /// unregister a listener previously registered - virtual void removeListener(ListenerRef _xListener) CFG_NOTHROW(); + void removeListener(rtl::Reference<TreeManager> _xListener) SAL_THROW(()); private: - typedef std::list<ListenerRef> ListenerList; - - ListenerList copyListenerList(); + std::list< rtl::Reference<TreeManager> > copyListenerList(); osl::Mutex m_aMutex; - ListenerList m_aListeners; + std::list< rtl::Reference<TreeManager> > m_aListeners; }; // --------------------------------------------------------------------------- } // namespace backend |