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

Side by Side Diff: chrome/browser/extensions/syncable_extension_settings_storage.h

Issue 8375047: Separate the syncing of extension settings and app settings into separate data (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 9 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_EXTENSIONS_SYNCABLE_EXTENSION_SETTINGS_STORAGE_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_SYNCABLE_EXTENSION_SETTINGS_STORAGE_H_
6 #define CHROME_BROWSER_EXTENSIONS_SYNCABLE_EXTENSION_SETTINGS_STORAGE_H_ 6 #define CHROME_BROWSER_EXTENSIONS_SYNCABLE_EXTENSION_SETTINGS_STORAGE_H_
7 #pragma once 7 #pragma once
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/memory/weak_ptr.h" 10 #include "base/memory/weak_ptr.h"
(...skipping 23 matching lines...) Expand all
34 virtual Result Get() OVERRIDE; 34 virtual Result Get() OVERRIDE;
35 virtual Result Set(const std::string& key, const Value& value) OVERRIDE; 35 virtual Result Set(const std::string& key, const Value& value) OVERRIDE;
36 virtual Result Set(const DictionaryValue& settings) OVERRIDE; 36 virtual Result Set(const DictionaryValue& settings) OVERRIDE;
37 virtual Result Remove(const std::string& key) OVERRIDE; 37 virtual Result Remove(const std::string& key) OVERRIDE;
38 virtual Result Remove(const std::vector<std::string>& keys) OVERRIDE; 38 virtual Result Remove(const std::vector<std::string>& keys) OVERRIDE;
39 virtual Result Clear() OVERRIDE; 39 virtual Result Clear() OVERRIDE;
40 40
41 // Sync-related methods, analogous to those on SyncableService (handled by 41 // Sync-related methods, analogous to those on SyncableService (handled by
42 // ExtensionSettings). 42 // ExtensionSettings).
43 SyncError StartSyncing( 43 SyncError StartSyncing(
44 // Either EXTENSION_SETTINGS or APP_SETTINGS.
45 syncable::ModelType type,
44 const DictionaryValue& sync_state, 46 const DictionaryValue& sync_state,
45 // Must NOT be NULL. Ownership NOT taken. 47 // Must NOT be NULL. Ownership NOT taken.
46 SyncChangeProcessor* sync_processor); 48 SyncChangeProcessor* sync_processor);
47 void StopSyncing(); 49 void StopSyncing();
48 std::vector<SyncError> ProcessSyncChanges( 50 std::vector<SyncError> ProcessSyncChanges(
49 const ExtensionSettingSyncDataList& sync_changes); 51 const ExtensionSettingSyncDataList& sync_changes);
50 52
51 private: 53 private:
52 // Either adds to sync or send updates to sync for some settings. 54 // Either adds to sync or send updates to sync for some settings.
53 // Whether they're adds or updates depends on the state of |synced_keys_|. 55 // Whether they're adds or updates depends on the state of |synced_keys_|.
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 // List of observers to settings changes. 87 // List of observers to settings changes.
86 const scoped_refptr<ObserverListThreadSafe<ExtensionSettingsObserver> > 88 const scoped_refptr<ObserverListThreadSafe<ExtensionSettingsObserver> >
87 observers_; 89 observers_;
88 90
89 // Id of the extension these settings are for. 91 // Id of the extension these settings are for.
90 std::string const extension_id_; 92 std::string const extension_id_;
91 93
92 // Storage area to sync. 94 // Storage area to sync.
93 const scoped_ptr<ExtensionSettingsStorage> delegate_; 95 const scoped_ptr<ExtensionSettingsStorage> delegate_;
94 96
97 // Sync model type. Either EXTENSION_SETTINGS or APP_SETTINGS while sync is
98 // enabled (between calls to Start/StopSyncing), or UNSPECIFIED while not.
99 syncable::ModelType sync_type_;
100
95 // Sync processor. Non-NULL while sync is enabled (between calls to 101 // Sync processor. Non-NULL while sync is enabled (between calls to
96 // StartSyncing and StopSyncing). 102 // StartSyncing and StopSyncing).
97 SyncChangeProcessor* sync_processor_; 103 SyncChangeProcessor* sync_processor_;
98 104
99 // Keys of the settings that are currently being synced. Only used to decide 105 // Keys of the settings that are currently being synced. Only used to decide
100 // whether an ACTION_ADD or ACTION_UPDATE should be sent to sync on a Set(). 106 // whether an ACTION_ADD or ACTION_UPDATE should be sent to sync on a Set().
101 std::set<std::string> synced_keys_; 107 std::set<std::string> synced_keys_;
102 108
103 DISALLOW_COPY_AND_ASSIGN(SyncableExtensionSettingsStorage); 109 DISALLOW_COPY_AND_ASSIGN(SyncableExtensionSettingsStorage);
104 }; 110 };
105 111
106 #endif // CHROME_BROWSER_EXTENSIONS_SYNCABLE_EXTENSION_SETTINGS_STORAGE_H_ 112 #endif // CHROME_BROWSER_EXTENSIONS_SYNCABLE_EXTENSION_SETTINGS_STORAGE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698