diff options
author | kalman@chromium.org <kalman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-10 04:05:55 +0000 |
---|---|---|
committer | kalman@chromium.org <kalman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-10 04:05:55 +0000 |
commit | 3044046b89190e30dedbfe43b8b021ed44a85e5d (patch) | |
tree | 60cbaede9751a3d3e4532e15bdd6268dbac4dd48 /chrome/browser/extensions/settings/setting_sync_data.cc | |
parent | b40ffe723a35565425c58c581144d7b697593c03 (diff) | |
download | chromium_src-3044046b89190e30dedbfe43b8b021ed44a85e5d.zip chromium_src-3044046b89190e30dedbfe43b8b021ed44a85e5d.tar.gz chromium_src-3044046b89190e30dedbfe43b8b021ed44a85e5d.tar.bz2 |
Run the JSON Schema Compiler's bundle compilation on JSON files. Previously it
was only run on IDL files. Clean up all the code which that simplifies.
TBR=isherman@chromium.org,battre@chromium.org,akalin@chromium.org
BUG=141318
Review URL: https://chromiumcodereview.appspot.com/11747025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176015 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/settings/setting_sync_data.cc')
-rw-r--r-- | chrome/browser/extensions/settings/setting_sync_data.cc | 102 |
1 files changed, 0 insertions, 102 deletions
diff --git a/chrome/browser/extensions/settings/setting_sync_data.cc b/chrome/browser/extensions/settings/setting_sync_data.cc deleted file mode 100644 index 4baf04c..0000000 --- a/chrome/browser/extensions/settings/setting_sync_data.cc +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/browser/extensions/settings/setting_sync_data.h" - -#include "base/json/json_reader.h" -#include "base/json/json_writer.h" -#include "sync/api/sync_data.h" -#include "sync/protocol/app_setting_specifics.pb.h" -#include "sync/protocol/extension_setting_specifics.pb.h" -#include "sync/protocol/sync.pb.h" - -namespace extensions { - -SettingSyncData::SettingSyncData( - const syncer::SyncChange& sync_change) { - Init(sync_change.change_type(), sync_change.sync_data()); -} - -SettingSyncData::SettingSyncData( - const syncer::SyncData& sync_data) { - Init(syncer::SyncChange::ACTION_INVALID, sync_data); -} - -void SettingSyncData::Init( - syncer::SyncChange::SyncChangeType change_type, - const syncer::SyncData& sync_data) { - DCHECK(!internal_.get()); - sync_pb::EntitySpecifics specifics = sync_data.GetSpecifics(); - // The data must only be either extension or app specfics. - DCHECK_NE(specifics.has_extension_setting(), - specifics.has_app_setting()); - if (specifics.has_extension_setting()) { - InitFromExtensionSettingSpecifics( - change_type, - specifics.extension_setting()); - } else if (specifics.has_app_setting()) { - InitFromExtensionSettingSpecifics( - change_type, - specifics.app_setting().extension_setting()); - } -} - -void SettingSyncData::InitFromExtensionSettingSpecifics( - syncer::SyncChange::SyncChangeType change_type, - const sync_pb::ExtensionSettingSpecifics& specifics) { - DCHECK(!internal_.get()); - scoped_ptr<Value> value( - base::JSONReader::Read(specifics.value())); - if (!value.get()) { - LOG(WARNING) << "Specifics for " << specifics.extension_id() << "/" << - specifics.key() << " had bad JSON for value: " << specifics.value(); - value.reset(new DictionaryValue()); - } - internal_ = new Internal( - change_type, - specifics.extension_id(), - specifics.key(), - value.Pass()); -} - -SettingSyncData::SettingSyncData( - syncer::SyncChange::SyncChangeType change_type, - const std::string& extension_id, - const std::string& key, - scoped_ptr<Value> value) - : internal_(new Internal(change_type, extension_id, key, value.Pass())) {} - -SettingSyncData::~SettingSyncData() {} - -syncer::SyncChange::SyncChangeType SettingSyncData::change_type() const { - return internal_->change_type_; -} - -const std::string& SettingSyncData::extension_id() const { - return internal_->extension_id_; -} - -const std::string& SettingSyncData::key() const { - return internal_->key_; -} - -const Value& SettingSyncData::value() const { - return *internal_->value_; -} - -SettingSyncData::Internal::Internal( - syncer::SyncChange::SyncChangeType change_type, - const std::string& extension_id, - const std::string& key, - scoped_ptr<Value> value) - : change_type_(change_type), - extension_id_(extension_id), - key_(key), - value_(value.Pass()) { - DCHECK(value_.get()); -} - -SettingSyncData::Internal::~Internal() {} - -} // namespace extensions |