| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/extensions/api/storage/setting_sync_data.h" | 5 #include "chrome/browser/extensions/api/storage/setting_sync_data.h" |
| 6 | 6 |
| 7 #include "base/json/json_reader.h" | 7 #include "base/json/json_reader.h" |
| 8 #include "base/json/json_writer.h" | 8 #include "base/json/json_writer.h" |
| 9 #include "sync/api/sync_data.h" | 9 #include "sync/api/sync_data.h" |
| 10 #include "sync/protocol/app_setting_specifics.pb.h" | 10 #include "sync/protocol/app_setting_specifics.pb.h" |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 44 | 44 |
| 45 void SettingSyncData::InitFromExtensionSettingSpecifics( | 45 void SettingSyncData::InitFromExtensionSettingSpecifics( |
| 46 syncer::SyncChange::SyncChangeType change_type, | 46 syncer::SyncChange::SyncChangeType change_type, |
| 47 const sync_pb::ExtensionSettingSpecifics& specifics) { | 47 const sync_pb::ExtensionSettingSpecifics& specifics) { |
| 48 DCHECK(!internal_.get()); | 48 DCHECK(!internal_.get()); |
| 49 scoped_ptr<Value> value( | 49 scoped_ptr<Value> value( |
| 50 base::JSONReader::Read(specifics.value())); | 50 base::JSONReader::Read(specifics.value())); |
| 51 if (!value.get()) { | 51 if (!value.get()) { |
| 52 LOG(WARNING) << "Specifics for " << specifics.extension_id() << "/" << | 52 LOG(WARNING) << "Specifics for " << specifics.extension_id() << "/" << |
| 53 specifics.key() << " had bad JSON for value: " << specifics.value(); | 53 specifics.key() << " had bad JSON for value: " << specifics.value(); |
| 54 value.reset(new DictionaryValue()); | 54 value.reset(new base::DictionaryValue()); |
| 55 } | 55 } |
| 56 internal_ = new Internal( | 56 internal_ = new Internal( |
| 57 change_type, | 57 change_type, |
| 58 specifics.extension_id(), | 58 specifics.extension_id(), |
| 59 specifics.key(), | 59 specifics.key(), |
| 60 value.Pass()); | 60 value.Pass()); |
| 61 } | 61 } |
| 62 | 62 |
| 63 SettingSyncData::SettingSyncData( | 63 SettingSyncData::SettingSyncData( |
| 64 syncer::SyncChange::SyncChangeType change_type, | 64 syncer::SyncChange::SyncChangeType change_type, |
| (...skipping 28 matching lines...) Expand all Loading... |
| 93 : change_type_(change_type), | 93 : change_type_(change_type), |
| 94 extension_id_(extension_id), | 94 extension_id_(extension_id), |
| 95 key_(key), | 95 key_(key), |
| 96 value_(value.Pass()) { | 96 value_(value.Pass()) { |
| 97 DCHECK(value_.get()); | 97 DCHECK(value_.get()); |
| 98 } | 98 } |
| 99 | 99 |
| 100 SettingSyncData::Internal::~Internal() {} | 100 SettingSyncData::Internal::~Internal() {} |
| 101 | 101 |
| 102 } // namespace extensions | 102 } // namespace extensions |
| OLD | NEW |