Chromium Code Reviews| Index: chrome/browser/local_discovery/service_discovery_host_client.h |
| diff --git a/chrome/browser/local_discovery/service_discovery_host_client.h b/chrome/browser/local_discovery/service_discovery_host_client.h |
| index 31f2a091a9f311c9ac504b596bdb05d989d439e8..4d9aaa13b61d40f9b4fad91f44c3222d729a56d8 100644 |
| --- a/chrome/browser/local_discovery/service_discovery_host_client.h |
| +++ b/chrome/browser/local_discovery/service_discovery_host_client.h |
| @@ -12,6 +12,7 @@ |
| #include "base/threading/non_thread_safe.h" |
| #include "chrome/common/local_discovery/service_discovery_client.h" |
| #include "content/public/browser/utility_process_host_client.h" |
| +#include "net/base/network_change_notifier.h" |
| namespace base { |
| class TaskRunner; |
| @@ -25,9 +26,11 @@ namespace local_discovery { |
| // Implementation of ServiceDiscoveryClient that delegates all functionality to |
| // utility process. |
| -class ServiceDiscoveryHostClient : public base::NonThreadSafe, |
| - public ServiceDiscoveryClient, |
| - public content::UtilityProcessHostClient { |
| +class ServiceDiscoveryHostClient |
| + : public base::NonThreadSafe, |
| + public ServiceDiscoveryClient, |
| + public content::UtilityProcessHostClient, |
| + public net::NetworkChangeNotifier::IPAddressObserver { |
| public: |
| ServiceDiscoveryHostClient(); |
| @@ -52,6 +55,9 @@ class ServiceDiscoveryHostClient : public base::NonThreadSafe, |
| // UtilityProcessHostClient implementation. |
| virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
| + // net::NetworkChangeNotifier::IPAddressObserver implementation. |
| + virtual void OnIPAddressChanged() OVERRIDE; |
| + |
| protected: |
| virtual ~ServiceDiscoveryHostClient(); |
| @@ -60,28 +66,32 @@ class ServiceDiscoveryHostClient : public base::NonThreadSafe, |
| class ServiceResolverProxy; |
| class LocalDomainResolverProxy; |
| - typedef std::map<uint64, ServiceWatcher::UpdatedCallback> WatcherCallbacks; |
| - typedef std::map<uint64, ServiceResolver::ResolveCompleteCallback> |
| - ResolverCallbacks; |
| - typedef std::map<uint64, LocalDomainResolver::IPAddressCallback> |
| - DomainResolverCallbacks; |
| + typedef std::map<uint64, ServiceWatcherProxy*> WatcherProxies; |
| + typedef std::map<uint64, ServiceResolverProxy*> |
|
Vitaly Buka (NO REVIEWS)
2013/09/06 04:59:27
fits one line
|
| + ResolverProxies; |
| + typedef std::map<uint64, LocalDomainResolverProxy*> |
|
Vitaly Buka (NO REVIEWS)
2013/09/06 04:59:27
maybe fits one line
|
| + DomainResolverProxies; |
| void StartOnIOThread(); |
| void ShutdownOnIOThread(); |
| + void RestartOnIOThread(); |
| + |
| + void StartUtilityProcess(); |
| + void ShutdownUtilityProcess(); |
| void Send(IPC::Message* msg); |
| void SendOnIOThread(IPC::Message* msg); |
| - uint64 RegisterWatcherCallback( |
| - const ServiceWatcher::UpdatedCallback& callback); |
| - uint64 RegisterResolverCallback( |
| - const ServiceResolver::ResolveCompleteCallback& callback); |
| - uint64 RegisterLocalDomainResolverCallback( |
| - const LocalDomainResolver::IPAddressCallback& callback); |
| + uint64 RegisterWatcherProxy( |
| + ServiceWatcherProxy* proxy); |
| + uint64 RegisterResolverProxy( |
|
Vitaly Buka (NO REVIEWS)
2013/09/06 04:59:27
same
|
| + ServiceResolverProxy* proxy); |
| + uint64 RegisterLocalDomainResolverProxy( |
| + LocalDomainResolverProxy* proxy); |
| - void UnregisterWatcherCallback(uint64 id); |
| - void UnregisterResolverCallback(uint64 id); |
| - void UnregisterLocalDomainResolverCallback(uint64 id); |
| + void UnregisterWatcherProxy(uint64 id); |
| + void UnregisterResolverProxy(uint64 id); |
| + void UnregisterLocalDomainResolverProxy(uint64 id); |
| // IPC Message handlers. |
| void OnWatcherCallback(uint64 id, |
| @@ -110,14 +120,13 @@ class ServiceDiscoveryHostClient : public base::NonThreadSafe, |
| const net::IPAddressNumber& address_ipv4, |
| const net::IPAddressNumber& address_ipv6); |
| - |
| base::WeakPtr<content::UtilityProcessHost> utility_host_; |
| // Incrementing counter to assign ID to watchers and resolvers. |
| uint64 current_id_; |
| - WatcherCallbacks service_watcher_callbacks_; |
| - ResolverCallbacks service_resolver_callbacks_; |
| - DomainResolverCallbacks domain_resolver_callbacks_; |
| + WatcherProxies service_watcher_proxies_; |
| + ResolverProxies service_resolver_proxies_; |
| + DomainResolverProxies domain_resolver_proxies_; |
| scoped_refptr<base::TaskRunner> callback_runner_; |
| DISALLOW_COPY_AND_ASSIGN(ServiceDiscoveryHostClient); |