Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(287)

Unified Diff: chrome/browser/extensions/api/storage/setting_sync_data.h

Issue 11778097: Revert revision 176015 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/storage/setting_sync_data.h
===================================================================
--- chrome/browser/extensions/api/storage/setting_sync_data.h (revision 176053)
+++ chrome/browser/extensions/api/storage/setting_sync_data.h (working copy)
@@ -1,91 +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.
-
-#ifndef CHROME_BROWSER_EXTENSIONS_API_STORAGE_SETTING_SYNC_DATA_H_
-#define CHROME_BROWSER_EXTENSIONS_API_STORAGE_SETTING_SYNC_DATA_H_
-
-#include "base/memory/ref_counted.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/values.h"
-#include "sync/api/sync_change.h"
-
-namespace syncer {
-class SyncData;
-}
-
-namespace sync_pb {
-class ExtensionSettingSpecifics;
-}
-
-namespace extensions {
-
-// Container for data interpreted from sync data/changes for an extension or
-// app setting. Safe and efficient to copy.
-class SettingSyncData {
- public:
- // Creates from a sync change.
- explicit SettingSyncData(const syncer::SyncChange& sync_change);
-
- // Creates from sync data. |change_type| will be ACTION_INVALID.
- explicit SettingSyncData(const syncer::SyncData& sync_data);
-
- // Creates explicitly.
- SettingSyncData(
- syncer::SyncChange::SyncChangeType change_type,
- const std::string& extension_id,
- const std::string& key,
- scoped_ptr<Value> value);
-
- ~SettingSyncData();
-
- // Returns the type of the sync change; may be ACTION_INVALID.
- syncer::SyncChange::SyncChangeType change_type() const;
-
- // Returns the extension id the setting is for.
- const std::string& extension_id() const;
-
- // Returns the settings key.
- const std::string& key() const;
-
- // Returns the value of the setting.
- const Value& value() const;
-
- private:
- // Ref-counted container for the data.
- // TODO(kalman): Use browser_sync::Immutable<Internal>.
- class Internal : public base::RefCountedThreadSafe<Internal> {
- public:
- Internal(
- syncer::SyncChange::SyncChangeType change_type,
- const std::string& extension_id,
- const std::string& key,
- scoped_ptr<Value> value);
-
- syncer::SyncChange::SyncChangeType change_type_;
- std::string extension_id_;
- std::string key_;
- scoped_ptr<Value> value_;
-
- private:
- friend class base::RefCountedThreadSafe<Internal>;
- ~Internal();
- };
-
- // Initializes internal_ from sync data for an extension or app setting.
- void Init(syncer::SyncChange::SyncChangeType change_type,
- const syncer::SyncData& sync_data);
-
- // Initializes internal_ from extension specifics.
- void InitFromExtensionSettingSpecifics(
- syncer::SyncChange::SyncChangeType change_type,
- const sync_pb::ExtensionSettingSpecifics& specifics);
-
- scoped_refptr<Internal> internal_;
-};
-
-typedef std::vector<SettingSyncData> SettingSyncDataList;
-
-} // namespace extensions
-
-#endif // CHROME_BROWSER_EXTENSIONS_API_STORAGE_SETTING_SYNC_DATA_H_

Powered by Google App Engine
This is Rietveld 408576698