| 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_
|
|
|