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

Side by Side Diff: chrome/browser/extensions/api/storage/settings_frontend.cc

Issue 181233011: Revert of Add ExtensionsApiClient interface, use it in the storage API SettingsFrontend (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/settings_frontend.h" 5 #include "chrome/browser/extensions/api/storage/settings_frontend.h"
6 6
7 #include <limits> 7 #include <limits>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
11 #include "base/files/file_path.h" 11 #include "base/files/file_path.h"
12 #include "base/json/json_reader.h" 12 #include "base/json/json_reader.h"
13 #include "base/lazy_instance.h" 13 #include "base/lazy_instance.h"
14 #include "chrome/browser/extensions/api/storage/leveldb_settings_storage_factory .h" 14 #include "chrome/browser/extensions/api/storage/leveldb_settings_storage_factory .h"
15 #include "chrome/browser/extensions/api/storage/sync_or_local_value_store_cache. h" 15 #include "chrome/browser/extensions/api/storage/sync_or_local_value_store_cache. h"
16 #include "chrome/browser/extensions/extension_service.h"
16 #include "chrome/common/extensions/api/storage.h" 17 #include "chrome/common/extensions/api/storage.h"
17 #include "content/public/browser/browser_context.h" 18 #include "content/public/browser/browser_context.h"
18 #include "content/public/browser/browser_thread.h" 19 #include "content/public/browser/browser_thread.h"
19 #include "extensions/browser/api/extensions_api_client.h"
20 #include "extensions/browser/event_router.h" 20 #include "extensions/browser/event_router.h"
21 #include "extensions/browser/extension_registry.h" 21 #include "extensions/browser/extension_registry.h"
22 #include "extensions/browser/extension_system.h" 22 #include "extensions/browser/extension_system.h"
23 23
24 #if defined(ENABLE_CONFIGURATION_POLICY)
25 #include "chrome/browser/extensions/api/storage/managed_value_store_cache.h"
26 #endif
27
24 using content::BrowserContext; 28 using content::BrowserContext;
25 using content::BrowserThread; 29 using content::BrowserThread;
26 30
27 namespace extensions { 31 namespace extensions {
28 32
29 namespace storage = api::storage; 33 namespace storage = api::storage;
30 34
31 namespace { 35 namespace {
32 36
33 base::LazyInstance<ProfileKeyedAPIFactory<SettingsFrontend> > g_factory = 37 base::LazyInstance<ProfileKeyedAPIFactory<SettingsFrontend> > g_factory =
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 observers_, 131 observers_,
128 browser_context_path); 132 browser_context_path);
129 caches_[settings_namespace::SYNC] = 133 caches_[settings_namespace::SYNC] =
130 new SyncOrLocalValueStoreCache( 134 new SyncOrLocalValueStoreCache(
131 settings_namespace::SYNC, 135 settings_namespace::SYNC,
132 factory, 136 factory,
133 sync_quota_limit_, 137 sync_quota_limit_,
134 observers_, 138 observers_,
135 browser_context_path); 139 browser_context_path);
136 140
137 // Add any additional caches the embedder supports (for example, a cache 141 #if defined(ENABLE_CONFIGURATION_POLICY)
138 // for chrome.storage.managed). 142 caches_[settings_namespace::MANAGED] =
139 ExtensionsAPIClient::Get()->AddAdditionalValueStoreCaches( 143 new ManagedValueStoreCache(
140 browser_context_, factory, observers_, &caches_); 144 browser_context_,
145 factory,
146 observers_);
147 #endif
141 } 148 }
142 149
143 SettingsFrontend::~SettingsFrontend() { 150 SettingsFrontend::~SettingsFrontend() {
144 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 151 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
145 observers_->RemoveObserver(browser_context_observer_.get()); 152 observers_->RemoveObserver(browser_context_observer_.get());
146 for (CacheMap::iterator it = caches_.begin(); it != caches_.end(); ++it) { 153 for (CacheMap::iterator it = caches_.begin(); it != caches_.end(); ++it) {
147 ValueStoreCache* cache = it->second; 154 ValueStoreCache* cache = it->second;
148 cache->ShutdownOnUI(); 155 cache->ShutdownOnUI();
149 BrowserThread::DeleteSoon(BrowserThread::FILE, FROM_HERE, cache); 156 BrowserThread::DeleteSoon(BrowserThread::FILE, FROM_HERE, cache);
150 } 157 }
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 SettingsFrontend::GetFactoryInstance() { 225 SettingsFrontend::GetFactoryInstance() {
219 return g_factory.Pointer(); 226 return g_factory.Pointer();
220 } 227 }
221 228
222 // static 229 // static
223 const char* SettingsFrontend::service_name() { 230 const char* SettingsFrontend::service_name() {
224 return "SettingsFrontend"; 231 return "SettingsFrontend";
225 } 232 }
226 233
227 } // namespace extensions 234 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698