From 05aad32d741012a173ea8f1a4b5072dabe7c0188 Mon Sep 17 00:00:00 2001 From: "szym@chromium.org" Date: Wed, 16 May 2012 18:10:53 +0000 Subject: [net/dns] Isolate DnsConfigWatcher from DnsConfigService. DnsConfigWatcher is installed at NetworkChangeNotifier and provides signals to DNSObservers. DnsConfigService becomes a DNSObserver. BUG=114827,114223,128166 TEST=./net_unittests --gtest_filter=DnsConfigService* Review URL: https://chromiumcodereview.appspot.com/10377092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137457 0039d316-1c4b-4281-b951-d872f2087c98 --- net/base/network_change_notifier_mac.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'net/base/network_change_notifier_mac.h') diff --git a/net/base/network_change_notifier_mac.h b/net/base/network_change_notifier_mac.h index ec2bb1f..c95e952 100644 --- a/net/base/network_change_notifier_mac.h +++ b/net/base/network_change_notifier_mac.h @@ -24,7 +24,7 @@ class NetworkChangeNotifierMac: public NetworkChangeNotifier { NetworkChangeNotifierMac(); virtual ~NetworkChangeNotifierMac(); - // NetworkChangeNotifier implementation: + // NetworkChangeNotifier: virtual bool IsCurrentlyOffline() const OVERRIDE; private: @@ -34,6 +34,8 @@ class NetworkChangeNotifierMac: public NetworkChangeNotifier { ONLINE = 1 }; + class DnsWatcherThread; + // Forwarder just exists to keep the NetworkConfigWatcherMac API out of // NetworkChangeNotifierMac's public API. class Forwarder : public NetworkConfigWatcherMac::Delegate { @@ -83,6 +85,9 @@ class NetworkChangeNotifierMac: public NetworkChangeNotifier { Forwarder forwarder_; scoped_ptr config_watcher_; + // Thread on which we can run DnsConfigWatcher, which requires TYPE_IO. + scoped_ptr dns_watcher_thread_; + DISALLOW_COPY_AND_ASSIGN(NetworkChangeNotifierMac); }; -- cgit v1.1