| Index: chrome/browser/media/router/discovery/mdns/dns_sd_registry.cc
|
| diff --git a/chrome/browser/media/router/discovery/mdns/dns_sd_registry.cc b/chrome/browser/media/router/discovery/mdns/dns_sd_registry.cc
|
| index 38364202af5231c260b78488eb6e324e432ef585..300daac34f521b7e9c83228db9ae41532338653b 100644
|
| --- a/chrome/browser/media/router/discovery/mdns/dns_sd_registry.cc
|
| +++ b/chrome/browser/media/router/discovery/mdns/dns_sd_registry.cc
|
| @@ -115,13 +115,23 @@ DnsSdRegistry::DnsSdRegistry(ServiceDiscoverySharedClient* client) {
|
| service_discovery_client_ = client;
|
| }
|
|
|
| -DnsSdRegistry::~DnsSdRegistry() {}
|
| +DnsSdRegistry::~DnsSdRegistry() {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| +}
|
| +
|
| +// static
|
| +DnsSdRegistry* DnsSdRegistry::GetInstance() {
|
| + return base::Singleton<DnsSdRegistry,
|
| + base::LeakySingletonTraits<DnsSdRegistry>>::get();
|
| +}
|
|
|
| void DnsSdRegistry::AddObserver(DnsSdObserver* observer) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| observers_.AddObserver(observer);
|
| }
|
|
|
| void DnsSdRegistry::RemoveObserver(DnsSdObserver* observer) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| observers_.RemoveObserver(observer);
|
| }
|
|
|
| @@ -133,16 +143,19 @@ DnsSdDeviceLister* DnsSdRegistry::CreateDnsSdDeviceLister(
|
| }
|
|
|
| void DnsSdRegistry::Publish(const std::string& service_type) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| DispatchApiEvent(service_type);
|
| }
|
|
|
| void DnsSdRegistry::ForceDiscovery() {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| for (const auto& next_service : service_data_map_) {
|
| next_service.second->ForceDiscovery();
|
| }
|
| }
|
|
|
| void DnsSdRegistry::RegisterDnsSdListener(const std::string& service_type) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| VLOG(1) << "RegisterDnsSdListener: " << service_type
|
| << ", registered: " << IsRegistered(service_type);
|
| if (service_type.empty())
|
| @@ -164,6 +177,7 @@ void DnsSdRegistry::RegisterDnsSdListener(const std::string& service_type) {
|
| }
|
|
|
| void DnsSdRegistry::UnregisterDnsSdListener(const std::string& service_type) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| VLOG(1) << "UnregisterDnsSdListener: " << service_type;
|
| auto it = service_data_map_.find(service_type);
|
| if (it == service_data_map_.end())
|
| @@ -176,6 +190,7 @@ void DnsSdRegistry::UnregisterDnsSdListener(const std::string& service_type) {
|
| void DnsSdRegistry::ServiceChanged(const std::string& service_type,
|
| bool added,
|
| const DnsSdService& service) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| VLOG(1) << "ServiceChanged: service_type: " << service_type
|
| << ", known: " << IsRegistered(service_type)
|
| << ", service: " << service.service_name << ", added: " << added;
|
| @@ -194,6 +209,7 @@ void DnsSdRegistry::ServiceChanged(const std::string& service_type,
|
|
|
| void DnsSdRegistry::ServiceRemoved(const std::string& service_type,
|
| const std::string& service_name) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| VLOG(1) << "ServiceRemoved: service_type: " << service_type
|
| << ", known: " << IsRegistered(service_type)
|
| << ", service: " << service_name;
|
| @@ -210,6 +226,7 @@ void DnsSdRegistry::ServiceRemoved(const std::string& service_type,
|
| }
|
|
|
| void DnsSdRegistry::ServicesFlushed(const std::string& service_type) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| VLOG(1) << "ServicesFlushed: service_type: " << service_type
|
| << ", known: " << IsRegistered(service_type);
|
| if (!IsRegistered(service_type)) {
|
| @@ -224,6 +241,7 @@ void DnsSdRegistry::ServicesFlushed(const std::string& service_type) {
|
| }
|
|
|
| void DnsSdRegistry::DispatchApiEvent(const std::string& service_type) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| VLOG(1) << "DispatchApiEvent: service_type: " << service_type;
|
| for (auto& observer : observers_) {
|
| observer.OnDnsSdEvent(service_type,
|
| @@ -232,6 +250,7 @@ void DnsSdRegistry::DispatchApiEvent(const std::string& service_type) {
|
| }
|
|
|
| bool DnsSdRegistry::IsRegistered(const std::string& service_type) {
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| return service_data_map_.find(service_type) != service_data_map_.end();
|
| }
|
|
|
|
|