| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 <iterator> | 8 #include <iterator> |
| 9 #include <set> | 9 #include <set> |
| 10 | 10 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 #include "chrome/browser/browser_process.h" | 30 #include "chrome/browser/browser_process.h" |
| 31 #include "chrome/browser/chrome_notification_types.h" | 31 #include "chrome/browser/chrome_notification_types.h" |
| 32 #include "chrome/browser/devtools/devtools_window.h" | 32 #include "chrome/browser/devtools/devtools_window.h" |
| 33 #include "chrome/browser/extensions/api/app_runtime/app_runtime_api.h" | 33 #include "chrome/browser/extensions/api/app_runtime/app_runtime_api.h" |
| 34 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h" | 34 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h" |
| 35 #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" | 35 #include "chrome/browser/extensions/api/extension_action/extension_action_api.h" |
| 36 #include "chrome/browser/extensions/api/profile_keyed_api_factory.h" | 36 #include "chrome/browser/extensions/api/profile_keyed_api_factory.h" |
| 37 #include "chrome/browser/extensions/api/runtime/runtime_api.h" | 37 #include "chrome/browser/extensions/api/runtime/runtime_api.h" |
| 38 #include "chrome/browser/extensions/api/storage/settings_frontend.h" | 38 #include "chrome/browser/extensions/api/storage/settings_frontend.h" |
| 39 #include "chrome/browser/extensions/app_sync_data.h" | 39 #include "chrome/browser/extensions/app_sync_data.h" |
| 40 #include "chrome/browser/extensions/browser_event_router.h" | |
| 41 #include "chrome/browser/extensions/component_loader.h" | 40 #include "chrome/browser/extensions/component_loader.h" |
| 42 #include "chrome/browser/extensions/crx_installer.h" | 41 #include "chrome/browser/extensions/crx_installer.h" |
| 43 #include "chrome/browser/extensions/data_deleter.h" | 42 #include "chrome/browser/extensions/data_deleter.h" |
| 43 #include "chrome/browser/extensions/event_router.h" |
| 44 #include "chrome/browser/extensions/extension_disabled_ui.h" | 44 #include "chrome/browser/extensions/extension_disabled_ui.h" |
| 45 #include "chrome/browser/extensions/extension_error_reporter.h" | 45 #include "chrome/browser/extensions/extension_error_reporter.h" |
| 46 #include "chrome/browser/extensions/extension_error_ui.h" | 46 #include "chrome/browser/extensions/extension_error_ui.h" |
| 47 #include "chrome/browser/extensions/extension_host.h" | 47 #include "chrome/browser/extensions/extension_host.h" |
| 48 #include "chrome/browser/extensions/extension_install_ui.h" | 48 #include "chrome/browser/extensions/extension_install_ui.h" |
| 49 #include "chrome/browser/extensions/extension_process_manager.h" | 49 #include "chrome/browser/extensions/extension_process_manager.h" |
| 50 #include "chrome/browser/extensions/extension_sorting.h" | 50 #include "chrome/browser/extensions/extension_sorting.h" |
| 51 #include "chrome/browser/extensions/extension_special_storage_policy.h" | 51 #include "chrome/browser/extensions/extension_special_storage_policy.h" |
| 52 #include "chrome/browser/extensions/extension_sync_data.h" | 52 #include "chrome/browser/extensions/extension_sync_data.h" |
| 53 #include "chrome/browser/extensions/extension_system.h" | 53 #include "chrome/browser/extensions/extension_system.h" |
| (...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 360 blacklist_(blacklist), | 360 blacklist_(blacklist), |
| 361 settings_frontend_(extensions::SettingsFrontend::Create(profile)), | 361 settings_frontend_(extensions::SettingsFrontend::Create(profile)), |
| 362 pending_extension_manager_(*this), | 362 pending_extension_manager_(*this), |
| 363 install_directory_(install_directory), | 363 install_directory_(install_directory), |
| 364 extensions_enabled_(extensions_enabled), | 364 extensions_enabled_(extensions_enabled), |
| 365 show_extensions_prompts_(true), | 365 show_extensions_prompts_(true), |
| 366 install_updates_when_idle_(true), | 366 install_updates_when_idle_(true), |
| 367 ready_(ready), | 367 ready_(ready), |
| 368 toolbar_model_(this), | 368 toolbar_model_(this), |
| 369 menu_manager_(profile), | 369 menu_manager_(profile), |
| 370 event_routers_initialized_(false), | |
| 371 update_once_all_providers_are_ready_(false), | 370 update_once_all_providers_are_ready_(false), |
| 372 browser_terminating_(false), | 371 browser_terminating_(false), |
| 373 installs_delayed_for_gc_(false), | 372 installs_delayed_for_gc_(false), |
| 374 is_first_run_(false), | 373 is_first_run_(false), |
| 375 app_sync_bundle_(this), | 374 app_sync_bundle_(this), |
| 376 extension_sync_bundle_(this) { | 375 extension_sync_bundle_(this) { |
| 377 #if defined(OS_CHROMEOS) | 376 #if defined(OS_CHROMEOS) |
| 378 disable_garbage_collection_ = false; | 377 disable_garbage_collection_ = false; |
| 379 #endif | 378 #endif |
| 380 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 379 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 494 extensions::ExternalProviderInterface* provider = i->get(); | 493 extensions::ExternalProviderInterface* provider = i->get(); |
| 495 provider->ServiceShutdown(); | 494 provider->ServiceShutdown(); |
| 496 } | 495 } |
| 497 } | 496 } |
| 498 | 497 |
| 499 void ExtensionService::SetSyncStartFlare( | 498 void ExtensionService::SetSyncStartFlare( |
| 500 const syncer::SyncableService::StartSyncFlare& flare) { | 499 const syncer::SyncableService::StartSyncFlare& flare) { |
| 501 flare_ = flare; | 500 flare_ = flare; |
| 502 } | 501 } |
| 503 | 502 |
| 504 void ExtensionService::InitEventRouters() { | |
| 505 if (event_routers_initialized_) | |
| 506 return; | |
| 507 | |
| 508 #if defined(ENABLE_EXTENSIONS) | |
| 509 browser_event_router_.reset(new extensions::BrowserEventRouter(profile_)); | |
| 510 #endif // defined(ENABLE_EXTENSIONS) | |
| 511 event_routers_initialized_ = true; | |
| 512 } | |
| 513 | |
| 514 void ExtensionService::Shutdown() { | 503 void ExtensionService::Shutdown() { |
| 515 system_->management_policy()->UnregisterProvider( | 504 system_->management_policy()->UnregisterProvider( |
| 516 shared_module_policy_provider_.get()); | 505 shared_module_policy_provider_.get()); |
| 517 } | 506 } |
| 518 | 507 |
| 519 const Extension* ExtensionService::GetExtensionById( | 508 const Extension* ExtensionService::GetExtensionById( |
| 520 const std::string& id, bool include_disabled) const { | 509 const std::string& id, bool include_disabled) const { |
| 521 int include_mask = INCLUDE_ENABLED; | 510 int include_mask = INCLUDE_ENABLED; |
| 522 if (include_disabled) { | 511 if (include_disabled) { |
| 523 // Include blacklisted extensions here because there are hundreds of | 512 // Include blacklisted extensions here because there are hundreds of |
| (...skipping 2658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3182 } | 3171 } |
| 3183 | 3172 |
| 3184 void ExtensionService::AddUpdateObserver(extensions::UpdateObserver* observer) { | 3173 void ExtensionService::AddUpdateObserver(extensions::UpdateObserver* observer) { |
| 3185 update_observers_.AddObserver(observer); | 3174 update_observers_.AddObserver(observer); |
| 3186 } | 3175 } |
| 3187 | 3176 |
| 3188 void ExtensionService::RemoveUpdateObserver( | 3177 void ExtensionService::RemoveUpdateObserver( |
| 3189 extensions::UpdateObserver* observer) { | 3178 extensions::UpdateObserver* observer) { |
| 3190 update_observers_.RemoveObserver(observer); | 3179 update_observers_.RemoveObserver(observer); |
| 3191 } | 3180 } |
| OLD | NEW |