Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Unified Diff: net/base/host_resolver_impl.cc

Issue 10873018: [net] Move DnsConfigService to NetworkChangeNotifier. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: add comment Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/base/host_resolver_impl.h ('k') | net/base/host_resolver_impl_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/base/host_resolver_impl.cc
diff --git a/net/base/host_resolver_impl.cc b/net/base/host_resolver_impl.cc
index ce6f1264f40da6914f6ecbc9a48d997d665ffe2a..da64ce8d89222a0f239c7960d93c8cde6f6f4899 100644
--- a/net/base/host_resolver_impl.cc
+++ b/net/base/host_resolver_impl.cc
@@ -408,7 +408,6 @@ class PriorityTracker {
HostResolver* CreateHostResolver(size_t max_concurrent_resolves,
size_t max_retry_attempts,
HostCache* cache,
- scoped_ptr<DnsConfigService> config_service,
scoped_ptr<DnsClient> dns_client,
NetLog* net_log) {
if (max_concurrent_resolves == HostResolver::kDefaultParallelism)
@@ -423,7 +422,6 @@ HostResolver* CreateHostResolver(size_t max_concurrent_resolves,
cache,
limits,
HostResolverImpl::ProcTaskParams(NULL, max_retry_attempts),
- config_service.Pass(),
dns_client.Pass(),
net_log);
@@ -440,7 +438,6 @@ HostResolver* CreateSystemHostResolver(size_t max_concurrent_resolves,
return CreateHostResolver(max_concurrent_resolves,
max_retry_attempts,
HostCache::CreateDefaultCache(),
- DnsConfigService::CreateSystemService(),
scoped_ptr<DnsClient>(NULL),
net_log);
}
@@ -451,7 +448,6 @@ HostResolver* CreateNonCachingSystemHostResolver(size_t max_concurrent_resolves,
return CreateHostResolver(max_concurrent_resolves,
max_retry_attempts,
NULL,
- scoped_ptr<DnsConfigService>(NULL),
scoped_ptr<DnsClient>(NULL),
net_log);
}
@@ -462,7 +458,6 @@ HostResolver* CreateAsyncHostResolver(size_t max_concurrent_resolves,
return CreateHostResolver(max_concurrent_resolves,
max_retry_attempts,
HostCache::CreateDefaultCache(),
- DnsConfigService::CreateSystemService(),
DnsClient::CreateClient(net_log),
net_log);
}
@@ -1663,7 +1658,6 @@ HostResolverImpl::HostResolverImpl(
HostCache* cache,
const PrioritizedDispatcher::Limits& job_limits,
const ProcTaskParams& proc_params,
- scoped_ptr<DnsConfigService> dns_config_service,
scoped_ptr<DnsClient> dns_client,
NetLog* net_log)
: cache_(cache),
@@ -1671,7 +1665,6 @@ HostResolverImpl::HostResolverImpl(
max_queued_jobs_(job_limits.total_jobs * 100u),
proc_params_(proc_params),
default_address_family_(ADDRESS_FAMILY_UNSPECIFIED),
- dns_config_service_(dns_config_service.Pass()),
dns_client_(dns_client.Pass()),
received_dns_config_(false),
ipv6_probe_monitoring_(false),
@@ -1694,16 +1687,12 @@ HostResolverImpl::HostResolverImpl(
additional_resolver_flags_ |= HOST_RESOLVER_LOOPBACK_ONLY;
#endif
NetworkChangeNotifier::AddIPAddressObserver(this);
+ NetworkChangeNotifier::AddDNSObserver(this);
+ OnDNSChanged();
#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) && \
!defined(OS_ANDROID)
EnsureDnsReloaderInit();
#endif
-
- if (dns_config_service_.get()) {
- dns_config_service_->Watch(
- base::Bind(&HostResolverImpl::OnDnsConfigChanged,
- base::Unretained(this)));
- }
}
HostResolverImpl::~HostResolverImpl() {
@@ -1713,6 +1702,7 @@ HostResolverImpl::~HostResolverImpl() {
STLDeleteValues(&jobs_);
NetworkChangeNotifier::RemoveIPAddressObserver(this);
+ NetworkChangeNotifier::RemoveDNSObserver(this);
}
void HostResolverImpl::SetMaxQueuedJobs(size_t value) {
@@ -2114,7 +2104,9 @@ void HostResolverImpl::OnIPAddressChanged() {
// |this| may be deleted inside AbortAllInProgressJobs().
}
-void HostResolverImpl::OnDnsConfigChanged(const DnsConfig& dns_config) {
+void HostResolverImpl::OnDNSChanged() {
+ DnsConfig dns_config;
+ NetworkChangeNotifier::GetDnsConfig(&dns_config);
if (net_log_) {
net_log_->AddGlobalEntry(
NetLog::TYPE_DNS_CONFIG_CHANGED,
« no previous file with comments | « net/base/host_resolver_impl.h ('k') | net/base/host_resolver_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698