buffet: Fix return type of DeviceRegistrationInfo::GetDeviceInfo Result can't be any Value. According doc string it's a JSON object which is DictionaryValue. BUG=none TEST=compile Change-Id: I0988d4558629974ad1fc980a5e096319620b585c Reviewed-on: https://chromium-review.googlesource.com/259660 Reviewed-by: Alex Vakulenko <avakulenko@chromium.org> Commit-Queue: Vitaly Buka <vitalybuka@chromium.org> Tested-by: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/device_registration_info.cc b/buffet/device_registration_info.cc index 9036ed8..ff4df89 100644 --- a/buffet/device_registration_info.cc +++ b/buffet/device_registration_info.cc
@@ -460,10 +460,10 @@ return resource; } -std::unique_ptr<base::Value> DeviceRegistrationInfo::GetDeviceInfo( +std::unique_ptr<base::DictionaryValue> DeviceRegistrationInfo::GetDeviceInfo( chromeos::ErrorPtr* error) { if (!CheckRegistration(error)) - return std::unique_ptr<base::Value>(); + return std::unique_ptr<base::DictionaryValue>(); // TODO(antonm): Switch to DoCloudRequest later. auto response = chromeos::http::GetAndBlock( @@ -476,10 +476,10 @@ LOG(WARNING) << "Failed to retrieve the device info. Response code = " << status_code; ParseGCDError(json.get(), error); - return std::unique_ptr<base::Value>(); + return std::unique_ptr<base::DictionaryValue>(); } } - return std::unique_ptr<base::Value>(json.release()); + return json; } std::string DeviceRegistrationInfo::RegisterDevice(
diff --git a/buffet/device_registration_info.h b/buffet/device_registration_info.h index 7d64d31..e8f02eb 100644 --- a/buffet/device_registration_info.h +++ b/buffet/device_registration_info.h
@@ -24,7 +24,7 @@ #include "buffet/xmpp/xmpp_client.h" namespace base { -class Value; +class DictionaryValue; } // namespace base namespace chromeos { @@ -112,7 +112,8 @@ // Gets the full device description JSON object, or nullptr if // the device is not registered or communication failure. - std::unique_ptr<base::Value> GetDeviceInfo(chromeos::ErrorPtr* error); + std::unique_ptr<base::DictionaryValue> GetDeviceInfo( + chromeos::ErrorPtr* error); // Registers the device. //