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) {