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

Side by Side Diff: chrome/browser/extensions/extension_service.cc

Issue 10777003: Refactor APIResourceController to ProfileKeyedService. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge/antony/fix build. Created 8 years, 5 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/extension_service.h" 5 #include "chrome/browser/extensions/extension_service.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <set> 8 #include <set>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 11 matching lines...) Expand all
22 #include "base/stringprintf.h" 22 #include "base/stringprintf.h"
23 #include "base/threading/thread_restrictions.h" 23 #include "base/threading/thread_restrictions.h"
24 #include "base/time.h" 24 #include "base/time.h"
25 #include "base/utf_string_conversions.h" 25 #include "base/utf_string_conversions.h"
26 #include "base/values.h" 26 #include "base/values.h"
27 #include "base/version.h" 27 #include "base/version.h"
28 #include "chrome/browser/accessibility/accessibility_extension_api.h" 28 #include "chrome/browser/accessibility/accessibility_extension_api.h"
29 #include "chrome/browser/bookmarks/bookmark_extension_api.h" 29 #include "chrome/browser/bookmarks/bookmark_extension_api.h"
30 #include "chrome/browser/browser_process.h" 30 #include "chrome/browser/browser_process.h"
31 #include "chrome/browser/chrome_plugin_service_filter.h" 31 #include "chrome/browser/chrome_plugin_service_filter.h"
32 #include "chrome/browser/extensions/api/api_resource_controller.h"
33 #include "chrome/browser/extensions/api/cookies/cookies_api.h" 32 #include "chrome/browser/extensions/api/cookies/cookies_api.h"
34 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h" 33 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h"
35 #include "chrome/browser/extensions/api/managed_mode/managed_mode_api.h" 34 #include "chrome/browser/extensions/api/managed_mode/managed_mode_api.h"
36 #include "chrome/browser/extensions/api/web_navigation/web_navigation_api.h" 35 #include "chrome/browser/extensions/api/web_navigation/web_navigation_api.h"
37 #include "chrome/browser/extensions/app_notification_manager.h" 36 #include "chrome/browser/extensions/app_notification_manager.h"
38 #include "chrome/browser/extensions/app_sync_data.h" 37 #include "chrome/browser/extensions/app_sync_data.h"
39 #include "chrome/browser/extensions/apps_promo.h" 38 #include "chrome/browser/extensions/apps_promo.h"
40 #include "chrome/browser/extensions/component_loader.h" 39 #include "chrome/browser/extensions/component_loader.h"
41 #include "chrome/browser/extensions/crx_installer.h" 40 #include "chrome/browser/extensions/crx_installer.h"
42 #include "chrome/browser/extensions/default_apps_trial.h" 41 #include "chrome/browser/extensions/default_apps_trial.h"
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
333 ready_(false), 332 ready_(false),
334 toolbar_model_(ALLOW_THIS_IN_INITIALIZER_LIST(this)), 333 toolbar_model_(ALLOW_THIS_IN_INITIALIZER_LIST(this)),
335 menu_manager_(profile), 334 menu_manager_(profile),
336 app_notification_manager_(new AppNotificationManager(profile)), 335 app_notification_manager_(new AppNotificationManager(profile)),
337 apps_promo_(profile->GetPrefs()), 336 apps_promo_(profile->GetPrefs()),
338 event_routers_initialized_(false), 337 event_routers_initialized_(false),
339 update_once_all_providers_are_ready_(false), 338 update_once_all_providers_are_ready_(false),
340 app_sync_bundle_(ALLOW_THIS_IN_INITIALIZER_LIST(this)), 339 app_sync_bundle_(ALLOW_THIS_IN_INITIALIZER_LIST(this)),
341 extension_sync_bundle_(ALLOW_THIS_IN_INITIALIZER_LIST(this)), 340 extension_sync_bundle_(ALLOW_THIS_IN_INITIALIZER_LIST(this)),
342 extension_warnings_(profile), 341 extension_warnings_(profile),
343 api_resource_controller_(NULL),
344 app_shortcut_manager_(profile) { 342 app_shortcut_manager_(profile) {
345 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 343 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
346 344
347 // Figure out if extension installation should be enabled. 345 // Figure out if extension installation should be enabled.
348 if (command_line->HasSwitch(switches::kDisableExtensions)) { 346 if (command_line->HasSwitch(switches::kDisableExtensions)) {
349 extensions_enabled_ = false; 347 extensions_enabled_ = false;
350 } else if (profile->GetPrefs()->GetBoolean(prefs::kDisableExtensions)) { 348 } else if (profile->GetPrefs()->GetBoolean(prefs::kDisableExtensions)) {
351 extensions_enabled_ = false; 349 extensions_enabled_ = false;
352 } 350 }
353 351
(...skipping 2184 matching lines...) Expand 10 before | Expand all | Expand 10 after
2538 2536
2539 ExtensionService::NaClModuleInfoList::iterator 2537 ExtensionService::NaClModuleInfoList::iterator
2540 ExtensionService::FindNaClModule(const GURL& url) { 2538 ExtensionService::FindNaClModule(const GURL& url) {
2541 for (NaClModuleInfoList::iterator iter = nacl_module_list_.begin(); 2539 for (NaClModuleInfoList::iterator iter = nacl_module_list_.begin();
2542 iter != nacl_module_list_.end(); ++iter) { 2540 iter != nacl_module_list_.end(); ++iter) {
2543 if (iter->url == url) 2541 if (iter->url == url)
2544 return iter; 2542 return iter;
2545 } 2543 }
2546 return nacl_module_list_.end(); 2544 return nacl_module_list_.end();
2547 } 2545 }
2548
2549 extensions::APIResourceController*
2550 ExtensionService::api_resource_controller() {
2551 // TODO(miket): Find a better place for this thing to live. Like every other
2552 // piece of baggage on ExtensionService, it's scoped along with a Profile.
2553
2554 // To coexist with certain unit tests that don't have a work-thread message
2555 // loop available at ExtensionService shutdown, we lazy-initialize this
2556 // object so that those cases neither create nor destroy an
2557 // APIResourceController.
2558 if (!api_resource_controller_.get()) {
2559 api_resource_controller_.reset(new extensions::APIResourceController());
2560 }
2561 return api_resource_controller_.get();
2562 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_service.h ('k') | chrome/browser/extensions/extension_system.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698