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

Side by Side Diff: chrome/browser/extensions/api/mdns/dns_sd_device_lister.cc

Issue 2876703002: [mDns] Move dns_sd_registry from extension/api/mdns to media/router/discovery/mdns (Closed)
Patch Set: rebase with master Created 3 years, 7 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
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/extensions/api/mdns/dns_sd_device_lister.h"
6
7 #include "chrome/common/extensions/api/mdns.h"
8
9 using local_discovery::ServiceDescription;
10
11 namespace extensions {
12
13 namespace {
14
15 void FillServiceInfo(const ServiceDescription& service_description,
16 DnsSdService* service) {
17 service->service_name = service_description.service_name;
18 service->service_host_port = service_description.address.ToString();
19 if (service_description.ip_address.IsValid()) {
20 service->ip_address = service_description.ip_address.ToString();
21 }
22 service->service_data = service_description.metadata;
23
24 VLOG(1) << "Found " << service->service_name << ", "
25 << service->service_host_port << ", "
26 << service->ip_address;
27 }
28
29 } // namespace
30
31 DnsSdDeviceLister::DnsSdDeviceLister(
32 local_discovery::ServiceDiscoveryClient* service_discovery_client,
33 DnsSdDelegate* delegate,
34 const std::string& service_type)
35 : delegate_(delegate),
36 device_lister_(this, service_discovery_client, service_type),
37 started_(false) {
38 }
39
40 DnsSdDeviceLister::~DnsSdDeviceLister() {
41 }
42
43 void DnsSdDeviceLister::Discover(bool force_update) {
44 if (!started_) {
45 device_lister_.Start();
46 started_ = true;
47 VLOG(1) << "Started device lister for service type "
48 << device_lister_.service_type();
49 }
50 device_lister_.DiscoverNewDevices(force_update);
51 VLOG(1) << "Discovery new devices for service type "
52 << device_lister_.service_type();
53 }
54
55 void DnsSdDeviceLister::OnDeviceChanged(
56 bool added,
57 const ServiceDescription& service_description) {
58 DnsSdService service;
59 FillServiceInfo(service_description, &service);
60 VLOG(1) << "OnDeviceChanged: "
61 << "service_name: " << service.service_name << ", "
62 << "added: " << added << ", "
63 << "service_type: " << device_lister_.service_type();
64 delegate_->ServiceChanged(device_lister_.service_type(), added, service);
65 }
66
67 void DnsSdDeviceLister::OnDeviceRemoved(const std::string& service_name) {
68 VLOG(1) << "OnDeviceRemoved: "
69 << "service_name: " << service_name << ", "
70 << "service_type: " << device_lister_.service_type();
71 delegate_->ServiceRemoved(device_lister_.service_type(), service_name);
72 }
73
74 void DnsSdDeviceLister::OnDeviceCacheFlushed() {
75 VLOG(1) << "OnDeviceCacheFlushed: "
76 << "service_type: " << device_lister_.service_type();
77 delegate_->ServicesFlushed(device_lister_.service_type());
78 device_lister_.DiscoverNewDevices(false);
79 }
80
81 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/browser/extensions/api/mdns/dns_sd_device_lister.h ('k') | chrome/browser/extensions/api/mdns/dns_sd_registry.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698