Commit b5494c4a authored by Lei Zhang's avatar Lei Zhang Committed by Commit Bot

Simplify CloudDeviceDescription.

Fold some small methods that are only called once into their callers.

Change-Id: Ib3e9563113292dc381e0393da09eb6c8f1935088
Reviewed-on: https://chromium-review.googlesource.com/827587Reviewed-by: default avatarRebekah Potter <rbpotter@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524198}
parent fe33e303
...@@ -9,42 +9,26 @@ ...@@ -9,42 +9,26 @@
#include "base/json/json_reader.h" #include "base/json/json_reader.h"
#include "base/json/json_writer.h" #include "base/json/json_writer.h"
#include "base/logging.h" #include "base/logging.h"
#include "base/memory/ptr_util.h"
#include "base/values.h" #include "base/values.h"
#include "components/cloud_devices/common/cloud_device_description_consts.h" #include "components/cloud_devices/common/cloud_device_description_consts.h"
namespace cloud_devices { namespace cloud_devices {
CloudDeviceDescription::CloudDeviceDescription() { CloudDeviceDescription::CloudDeviceDescription()
Reset(); : root_(std::make_unique<base::DictionaryValue>()) {
}
CloudDeviceDescription::~CloudDeviceDescription() {
}
void CloudDeviceDescription::Reset() {
root_.reset(new base::DictionaryValue);
root_->SetString(json::kVersion, json::kVersion10); root_->SetString(json::kVersion, json::kVersion10);
} }
bool CloudDeviceDescription::InitFromDictionary( CloudDeviceDescription::~CloudDeviceDescription() = default;
std::unique_ptr<base::DictionaryValue> root) {
if (!root)
return false;
Reset();
root_ = std::move(root);
std::string version;
root_->GetString(json::kVersion, &version);
return version == json::kVersion10;
}
bool CloudDeviceDescription::InitFromString(const std::string& json) { bool CloudDeviceDescription::InitFromString(const std::string& json) {
std::unique_ptr<base::Value> parsed = base::JSONReader::Read(json); auto parsed = base::DictionaryValue::From(base::JSONReader::Read(json));
base::DictionaryValue* description = nullptr; if (!parsed)
if (!parsed || !parsed->GetAsDictionary(&description))
return false; return false;
ignore_result(parsed.release());
return InitFromDictionary(base::WrapUnique(description)); root_ = std::move(parsed);
const base::Value* version = root_->FindKey(json::kVersion);
return version && version->GetString() == json::kVersion10;
} }
std::string CloudDeviceDescription::ToString() const { std::string CloudDeviceDescription::ToString() const {
...@@ -63,7 +47,7 @@ const base::DictionaryValue* CloudDeviceDescription::GetItem( ...@@ -63,7 +47,7 @@ const base::DictionaryValue* CloudDeviceDescription::GetItem(
base::DictionaryValue* CloudDeviceDescription::CreateItem( base::DictionaryValue* CloudDeviceDescription::CreateItem(
const std::string& path) { const std::string& path) {
return root_->SetDictionary(path, base::MakeUnique<base::DictionaryValue>()); return root_->SetDictionary(path, std::make_unique<base::DictionaryValue>());
} }
const base::ListValue* CloudDeviceDescription::GetListItem( const base::ListValue* CloudDeviceDescription::GetListItem(
...@@ -75,7 +59,7 @@ const base::ListValue* CloudDeviceDescription::GetListItem( ...@@ -75,7 +59,7 @@ const base::ListValue* CloudDeviceDescription::GetListItem(
base::ListValue* CloudDeviceDescription::CreateListItem( base::ListValue* CloudDeviceDescription::CreateListItem(
const std::string& path) { const std::string& path) {
return root_->SetList(path, base::MakeUnique<base::ListValue>()); return root_->SetList(path, std::make_unique<base::ListValue>());
} }
} // namespace cloud_devices } // namespace cloud_devices
...@@ -8,7 +8,6 @@ ...@@ -8,7 +8,6 @@
#include <memory> #include <memory>
#include <string> #include <string>
#include "base/callback.h"
#include "base/macros.h" #include "base/macros.h"
namespace base { namespace base {
...@@ -26,9 +25,6 @@ class CloudDeviceDescription { ...@@ -26,9 +25,6 @@ class CloudDeviceDescription {
CloudDeviceDescription(); CloudDeviceDescription();
~CloudDeviceDescription(); ~CloudDeviceDescription();
void Reset();
bool InitFromDictionary(std::unique_ptr<base::DictionaryValue> root);
bool InitFromString(const std::string& json); bool InitFromString(const std::string& json);
std::string ToString() const; std::string ToString() const;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment