diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-25 21:30:38 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-25 21:30:38 +0000 |
commit | 66761b95332549f825999e482c17c94675275f49 (patch) | |
tree | fc5307808a2c62f1eff2a9f37db3aff11c5455d9 /chrome/browser/sync/notifier/server_notifier_thread.h | |
parent | e313f3b11360902a3da9b3b1cc0df2a4792d0867 (diff) | |
download | chromium_src-66761b95332549f825999e482c17c94675275f49.zip chromium_src-66761b95332549f825999e482c17c94675275f49.tar.gz chromium_src-66761b95332549f825999e482c17c94675275f49.tar.bz2 |
Massively simplify the NetworkChangeNotifier infrastructure:
* Use a process-wide object (singleton pattern)
* Create/destroy this object on the main thread, make it outlive all consumers
* Make observer-related functions threadsafe
As a result, the notifier can now be used by any thread (eliminating things like NetworkChangeObserverProxy and NetworkChangeNotifierProxy, and expanding its usefulness); its creation and inner workings are much simplified (eliminating implementation-specific classes); and it is simpler to access (eliminating things like NetworkChangeNotifierThread and a LOT of passing pointers around).
BUG=none
TEST=Unittests; network changes still trigger notifications
Review URL: http://codereview.chromium.org/2802015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50895 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sync/notifier/server_notifier_thread.h')
-rw-r--r-- | chrome/browser/sync/notifier/server_notifier_thread.h | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/chrome/browser/sync/notifier/server_notifier_thread.h b/chrome/browser/sync/notifier/server_notifier_thread.h index 9f079e2..021095c 100644 --- a/chrome/browser/sync/notifier/server_notifier_thread.h +++ b/chrome/browser/sync/notifier/server_notifier_thread.h @@ -20,10 +20,6 @@ #include "chrome/common/net/notifier/listener/mediator_thread_impl.h" #include "google/cacheinvalidation/invalidation-client.h" -namespace chrome_common_net { -class NetworkChangeNotifierThread; -} // namespace chrome_common_net - namespace sync_notifier { class ChromeInvalidationClient; @@ -32,9 +28,7 @@ class ServerNotifierThread : public notifier::MediatorThreadImpl, public invalidation::InvalidationListener { public: - explicit ServerNotifierThread( - chrome_common_net::NetworkChangeNotifierThread* - network_change_notifier_thread); + ServerNotifierThread(); virtual ~ServerNotifierThread(); |