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

Side by Side Diff: net/dns/mdns_client_impl.h

Issue 851503003: Update from https://crrev.com/311076 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 11 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 unified diff | Download patch
« no previous file with comments | « net/dns/dns_config_service_unittest.cc ('k') | net/dns/mdns_client_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 #ifndef NET_DNS_MDNS_CLIENT_IMPL_H_ 5 #ifndef NET_DNS_MDNS_CLIENT_IMPL_H_
6 #define NET_DNS_MDNS_CLIENT_IMPL_H_ 6 #define NET_DNS_MDNS_CLIENT_IMPL_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 class MDnsListenerImpl; 102 class MDnsListenerImpl;
103 103
104 class NET_EXPORT_PRIVATE MDnsClientImpl : public MDnsClient { 104 class NET_EXPORT_PRIVATE MDnsClientImpl : public MDnsClient {
105 public: 105 public:
106 // The core object exists while the MDnsClient is listening, and is deleted 106 // The core object exists while the MDnsClient is listening, and is deleted
107 // whenever the number of listeners reaches zero. The deletion happens 107 // whenever the number of listeners reaches zero. The deletion happens
108 // asychronously, so destroying the last listener does not immediately 108 // asychronously, so destroying the last listener does not immediately
109 // invalidate the core. 109 // invalidate the core.
110 class Core : public base::SupportsWeakPtr<Core>, MDnsConnection::Delegate { 110 class Core : public base::SupportsWeakPtr<Core>, MDnsConnection::Delegate {
111 public: 111 public:
112 explicit Core(MDnsClientImpl* client); 112 Core();
113 ~Core() override; 113 ~Core() override;
114 114
115 // Initialize the core. Returns true on success. 115 // Initialize the core. Returns true on success.
116 bool Init(MDnsSocketFactory* socket_factory); 116 bool Init(MDnsSocketFactory* socket_factory);
117 117
118 // Send a query with a specific rrtype and name. Returns true on success. 118 // Send a query with a specific rrtype and name. Returns true on success.
119 bool SendQuery(uint16 rrtype, std::string name); 119 bool SendQuery(uint16 rrtype, std::string name);
120 120
121 // Add/remove a listener to the list of listeners. 121 // Add/remove a listener to the list of listeners.
122 void AddListener(MDnsListenerImpl* listener); 122 void AddListener(MDnsListenerImpl* listener);
(...skipping 27 matching lines...) Expand all
150 void OnRecordRemoved(const RecordParsed* record); 150 void OnRecordRemoved(const RecordParsed* record);
151 151
152 void NotifyNsecRecord(const RecordParsed* record); 152 void NotifyNsecRecord(const RecordParsed* record);
153 153
154 // Delete and erase the observer list for |key|. Only deletes the observer 154 // Delete and erase the observer list for |key|. Only deletes the observer
155 // list if is empty. 155 // list if is empty.
156 void CleanupObserverList(const ListenerKey& key); 156 void CleanupObserverList(const ListenerKey& key);
157 157
158 ListenerMap listeners_; 158 ListenerMap listeners_;
159 159
160 MDnsClientImpl* client_;
161 MDnsCache cache_; 160 MDnsCache cache_;
162 161
163 base::CancelableClosure cleanup_callback_; 162 base::CancelableClosure cleanup_callback_;
164 base::Time scheduled_cleanup_; 163 base::Time scheduled_cleanup_;
165 164
166 scoped_ptr<MDnsConnection> connection_; 165 scoped_ptr<MDnsConnection> connection_;
167 166
168 DISALLOW_COPY_AND_ASSIGN(Core); 167 DISALLOW_COPY_AND_ASSIGN(Core);
169 }; 168 };
170 169
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
300 MDnsClientImpl* client_; 299 MDnsClientImpl* client_;
301 300
302 bool started_; 301 bool started_;
303 int flags_; 302 int flags_;
304 303
305 DISALLOW_COPY_AND_ASSIGN(MDnsTransactionImpl); 304 DISALLOW_COPY_AND_ASSIGN(MDnsTransactionImpl);
306 }; 305 };
307 306
308 } // namespace net 307 } // namespace net
309 #endif // NET_DNS_MDNS_CLIENT_IMPL_H_ 308 #endif // NET_DNS_MDNS_CLIENT_IMPL_H_
OLDNEW
« no previous file with comments | « net/dns/dns_config_service_unittest.cc ('k') | net/dns/mdns_client_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698