aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVitaly Buka <vitalybuka@google.com>2016-03-04 15:17:14 -0800
committerVitaly Buka <vitalybuka@google.com>2016-03-05 00:03:59 +0000
commit1c6837fa422706a5336c7cc79053698eff05427f (patch)
tree6cc7015fbd527dc756e3d969664e6f3e7b4c7e71 /src
parent63feef5cad7104f3cd4a6e09adc1d5460c83e72c (diff)
downloadlibweave-1c6837fa422706a5336c7cc79053698eff05427f.tar.gz
Remove CloudDelegate::Observer::OnDeviceInfoChanged
This method notification is just a proxy for config change event. We can directly signup for this notifications from config. BUG:27480269 Change-Id: Ic83dd9c6f5180428168cc2a22d2671035334211e Reviewed-on: https://weave-review.googlesource.com/2824 Reviewed-by: Alex Vakulenko <avakulenko@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/privet/cloud_delegate.cc9
-rw-r--r--src/privet/cloud_delegate.h2
-rw-r--r--src/privet/privet_manager.cc7
-rw-r--r--src/privet/privet_manager.h10
4 files changed, 7 insertions, 21 deletions
diff --git a/src/privet/cloud_delegate.cc b/src/privet/cloud_delegate.cc
index 0833780..65e4b87 100644
--- a/src/privet/cloud_delegate.cc
+++ b/src/privet/cloud_delegate.cc
@@ -46,8 +46,6 @@ class CloudDelegateImpl : public CloudDelegate {
: task_runner_{task_runner},
device_{device},
component_manager_{component_manager} {
- device_->GetMutableConfig()->AddOnChangedCallback(base::Bind(
- &CloudDelegateImpl::OnConfigChanged, weak_factory_.GetWeakPtr()));
device_->AddGcdStateChangedCallback(base::Bind(
&CloudDelegateImpl::OnRegistrationChanged, weak_factory_.GetWeakPtr()));
@@ -244,8 +242,6 @@ class CloudDelegateImpl : public CloudDelegate {
CHECK(command_owners_.erase(command->GetID()));
}
- void OnConfigChanged(const Settings&) { NotifyOnDeviceInfoChanged(); }
-
void OnRegistrationChanged(GcdState status) {
if (status == GcdState::kUnconfigured ||
status == GcdState::kInvalidCredentials) {
@@ -262,7 +258,6 @@ class CloudDelegateImpl : public CloudDelegate {
EnumToString(status).c_str());
connection_state_ = ConnectionState{std::move(error)};
}
- NotifyOnDeviceInfoChanged();
}
void OnRegisterSuccess(const std::string& cloud_id) {
@@ -378,10 +373,6 @@ std::unique_ptr<CloudDelegate> CloudDelegate::CreateDefault(
new CloudDelegateImpl{task_runner, device, component_manager}};
}
-void CloudDelegate::NotifyOnDeviceInfoChanged() {
- FOR_EACH_OBSERVER(Observer, observer_list_, OnDeviceInfoChanged());
-}
-
void CloudDelegate::NotifyOnTraitDefsChanged() {
FOR_EACH_OBSERVER(Observer, observer_list_, OnTraitDefsChanged());
}
diff --git a/src/privet/cloud_delegate.h b/src/privet/cloud_delegate.h
index 5ae54cf..4ded884 100644
--- a/src/privet/cloud_delegate.h
+++ b/src/privet/cloud_delegate.h
@@ -47,7 +47,6 @@ class CloudDelegate {
public:
virtual ~Observer() {}
- virtual void OnDeviceInfoChanged() {}
virtual void OnTraitDefsChanged() {}
virtual void OnStateChanged() {}
virtual void OnComponentTreeChanged() {}
@@ -136,7 +135,6 @@ class CloudDelegate {
observer_list_.RemoveObserver(observer);
}
- void NotifyOnDeviceInfoChanged();
void NotifyOnTraitDefsChanged();
void NotifyOnStateChanged();
void NotifyOnComponentTreeChanged();
diff --git a/src/privet/privet_manager.cc b/src/privet/privet_manager.cc
index 9c717ce..36223ba 100644
--- a/src/privet/privet_manager.cc
+++ b/src/privet/privet_manager.cc
@@ -12,7 +12,6 @@
#include <base/json/json_reader.h>
#include <base/json/json_writer.h>
#include <base/memory/weak_ptr.h>
-#include <base/scoped_observer.h>
#include <base/strings/string_number_conversions.h>
#include <base/values.h>
#include <weave/provider/network.h>
@@ -58,7 +57,6 @@ void Manager::Start(Network* network,
http_server->GetRequestTimeout());
cloud_ =
CloudDelegate::CreateDefault(task_runner_, device, component_manager);
- cloud_observer_.Add(cloud_.get());
security_.reset(new SecurityManager(device->GetMutableConfig(), auth_manager,
task_runner_));
@@ -92,6 +90,9 @@ void Manager::Start(Network* network,
path, base::Bind(&Manager::PrivetRequestHandler,
weak_ptr_factory_.GetWeakPtr()));
}
+
+ device->GetMutableConfig()->AddOnChangedCallback(base::Bind(
+ &Manager::OnDeviceInfoChanged, weak_ptr_factory_.GetWeakPtr()));
}
std::string Manager::GetCurrentlyConnectedSsid() const {
@@ -106,7 +107,7 @@ void Manager::AddOnPairingChangedCallbacks(
security_->RegisterPairingListeners(on_start, on_end);
}
-void Manager::OnDeviceInfoChanged() {
+void Manager::OnDeviceInfoChanged(const weave::Settings&) {
OnChanged();
}
diff --git a/src/privet/privet_manager.h b/src/privet/privet_manager.h
index 06eb89a..c91d72c 100644
--- a/src/privet/privet_manager.h
+++ b/src/privet/privet_manager.h
@@ -11,7 +11,6 @@
#include <vector>
#include <base/memory/weak_ptr.h>
-#include <base/scoped_observer.h>
#include <weave/device.h>
#include "src/privet/cloud_delegate.h"
@@ -41,10 +40,10 @@ class PrivetHandler;
class Publisher;
class SecurityManager;
-class Manager : public CloudDelegate::Observer {
+class Manager {
public:
explicit Manager(provider::TaskRunner* task_runner);
- ~Manager() override;
+ ~Manager();
void Start(provider::Network* network,
provider::DnsServiceDiscovery* dns_sd,
@@ -61,8 +60,7 @@ class Manager : public CloudDelegate::Observer {
const Device::PairingEndCallback& end_callback);
private:
- // CloudDelegate::Observer
- void OnDeviceInfoChanged() override;
+ void OnDeviceInfoChanged(const weave::Settings&);
void PrivetRequestHandler(
std::unique_ptr<provider::HttpServer::Request> request);
@@ -87,8 +85,6 @@ class Manager : public CloudDelegate::Observer {
std::unique_ptr<Publisher> publisher_;
std::unique_ptr<PrivetHandler> privet_handler_;
- ScopedObserver<CloudDelegate, CloudDelegate::Observer> cloud_observer_{this};
-
base::WeakPtrFactory<Manager> weak_ptr_factory_{this};
DISALLOW_COPY_AND_ASSIGN(Manager);
};