Hide internal settings from weave/settings.h BUG:24267885 Change-Id: I8584ba384b57703ea9bb7f9f9a285986373b455a Reviewed-on: https://weave-review.googlesource.com/1194 Reviewed-by: Vitaly Buka <vitalybuka@google.com>
diff --git a/libweave/include/weave/settings.h b/libweave/include/weave/settings.h index 84d7e0b..1c919a1 100644 --- a/libweave/include/weave/settings.h +++ b/libweave/include/weave/settings.h
@@ -56,10 +56,6 @@ base::TimeDelta backup_polling_period; bool wifi_auto_setup_enabled{true}; bool ble_setup_enabled{false}; - std::string refresh_token; - std::string robot_account; - std::string last_configured_ssid; - std::string secret; }; } // namespace weave
diff --git a/libweave/src/config.cc b/libweave/src/config.cc index 5370ec0..f601b82 100644 --- a/libweave/src/config.cc +++ b/libweave/src/config.cc
@@ -47,8 +47,8 @@ return StringToEnum(role, &scope); } -Settings CreateDefaultSettings() { - Settings result; +Config::Settings CreateDefaultSettings() { + Config::Settings result; result.oauth_url = "https://accounts.google.com/o/oauth2/"; result.service_url = "https://www.googleapis.com/clouddevices/v1/"; result.local_anonymous_access_role = "viewer"; @@ -78,7 +78,7 @@ callback.Run(settings_); } -const Settings& Config::GetSettings() const { +const Config::Settings& Config::GetSettings() const { return settings_; }
diff --git a/libweave/src/config.h b/libweave/src/config.h index e014f20..5baff87 100644 --- a/libweave/src/config.h +++ b/libweave/src/config.h
@@ -22,13 +22,20 @@ // Handles reading buffet config and state files. class Config final { public: - using OnChangedCallback = base::Callback<void(const Settings&)>; + struct Settings : public weave::Settings { + std::string refresh_token; + std::string robot_account; + std::string last_configured_ssid; + std::string secret; + }; + + using OnChangedCallback = base::Callback<void(const weave::Settings&)>; ~Config() = default; explicit Config(provider::ConfigStore* config_store); void AddOnChangedCallback(const OnChangedCallback& callback); - const Settings& GetSettings() const; + const Config::Settings& GetSettings() const; void Load();
diff --git a/libweave/src/config_unittest.cc b/libweave/src/config_unittest.cc index fd6b8d3..02885e1 100644 --- a/libweave/src/config_unittest.cc +++ b/libweave/src/config_unittest.cc
@@ -29,9 +29,9 @@ default_.Load(); } - const Settings& GetSettings() const { return config_.GetSettings(); } + const Config::Settings& GetSettings() const { return config_.GetSettings(); } - const Settings& GetDefaultSettings() const { return default_.GetSettings(); } + const Config::Settings& GetDefaultSettings() const { return default_.GetSettings(); } MOCK_METHOD1(OnConfigChanged, void(const Settings&));
diff --git a/libweave/src/device_registration_info.h b/libweave/src/device_registration_info.h index f73d450..14ddc1d 100644 --- a/libweave/src/device_registration_info.h +++ b/libweave/src/device_registration_info.h
@@ -131,7 +131,7 @@ const base::Closure& on_error) override; // TODO(vitalybuka): remove getters and pass config to dependent code. - const Settings& GetSettings() const { return config_->GetSettings(); } + const Config::Settings& GetSettings() const { return config_->GetSettings(); } Config* GetMutableConfig() { return config_.get(); } private:
diff --git a/libweave/src/device_registration_info_unittest.cc b/libweave/src/device_registration_info_unittest.cc index 947ba10..10bbc07 100644 --- a/libweave/src/device_registration_info_unittest.cc +++ b/libweave/src/device_registration_info_unittest.cc
@@ -494,9 +494,9 @@ EXPECT_EQ(RegistrationStatus::kConnecting, GetRegistrationStatus()); // Validate the device info saved to storage... - EXPECT_EQ(test_data::kDeviceId, saved_settings.cloud_id); - EXPECT_EQ(test_data::kRefreshToken, saved_settings.refresh_token); - EXPECT_EQ(test_data::kRobotAccountEmail, saved_settings.robot_account); + EXPECT_EQ(test_data::kDeviceId, dev_reg_->GetSettings().cloud_id); + EXPECT_EQ(test_data::kRefreshToken, dev_reg_->GetSettings().refresh_token); + EXPECT_EQ(test_data::kRobotAccountEmail, dev_reg_->GetSettings().robot_account); } TEST_F(DeviceRegistrationInfoTest, OOBRegistrationStatus) {