OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/dns/dns_config_service_posix.h" | 5 #include "net/dns/dns_config_service_posix.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 }; | 57 }; |
58 | 58 |
59 #elif defined(OS_ANDROID) | 59 #elif defined(OS_ANDROID) |
60 // On Android, assume DNS config may have changed on every network change. | 60 // On Android, assume DNS config may have changed on every network change. |
61 class DnsConfigWatcher : public NetworkChangeNotifier::NetworkChangeObserver { | 61 class DnsConfigWatcher : public NetworkChangeNotifier::NetworkChangeObserver { |
62 public: | 62 public: |
63 DnsConfigWatcher() { | 63 DnsConfigWatcher() { |
64 NetworkChangeNotifier::AddNetworkChangeObserver(this); | 64 NetworkChangeNotifier::AddNetworkChangeObserver(this); |
65 } | 65 } |
66 | 66 |
67 virtual ~DnsConfigWatcher() { | 67 ~DnsConfigWatcher() override { |
68 NetworkChangeNotifier::RemoveNetworkChangeObserver(this); | 68 NetworkChangeNotifier::RemoveNetworkChangeObserver(this); |
69 } | 69 } |
70 | 70 |
71 bool Watch(const base::Callback<void(bool succeeded)>& callback) { | 71 bool Watch(const base::Callback<void(bool succeeded)>& callback) { |
72 callback_ = callback; | 72 callback_ = callback; |
73 return true; | 73 return true; |
74 } | 74 } |
75 | 75 |
76 virtual void OnNetworkChanged(NetworkChangeNotifier::ConnectionType type) | 76 void OnNetworkChanged(NetworkChangeNotifier::ConnectionType type) override { |
77 override { | |
78 if (!callback_.is_null() && type != NetworkChangeNotifier::CONNECTION_NONE) | 77 if (!callback_.is_null() && type != NetworkChangeNotifier::CONNECTION_NONE) |
79 callback_.Run(true); | 78 callback_.Run(true); |
80 } | 79 } |
81 | 80 |
82 private: | 81 private: |
83 base::Callback<void(bool succeeded)> callback_; | 82 base::Callback<void(bool succeeded)> callback_; |
84 }; | 83 }; |
85 #elif !defined(OS_MACOSX) | 84 #elif !defined(OS_MACOSX) |
86 // DnsConfigWatcher for OS_MACOSX is in dns_config_watcher_mac.{hh,cc}. | 85 // DnsConfigWatcher for OS_MACOSX is in dns_config_watcher_mac.{hh,cc}. |
87 | 86 |
(...skipping 409 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
497 #endif // !defined(OS_ANDROID) | 496 #endif // !defined(OS_ANDROID) |
498 | 497 |
499 } // namespace internal | 498 } // namespace internal |
500 | 499 |
501 // static | 500 // static |
502 scoped_ptr<DnsConfigService> DnsConfigService::CreateSystemService() { | 501 scoped_ptr<DnsConfigService> DnsConfigService::CreateSystemService() { |
503 return scoped_ptr<DnsConfigService>(new internal::DnsConfigServicePosix()); | 502 return scoped_ptr<DnsConfigService>(new internal::DnsConfigServicePosix()); |
504 } | 503 } |
505 | 504 |
506 } // namespace net | 505 } // namespace net |
OLD | NEW |