| OLD | NEW |
| 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 <iterator> | 8 #include <iterator> |
| 9 #include <set> | 9 #include <set> |
| 10 | 10 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 #include "chrome/browser/bookmarks/bookmark_extension_api.h" | 30 #include "chrome/browser/bookmarks/bookmark_extension_api.h" |
| 31 #include "chrome/browser/bookmarks/bookmark_model_factory.h" | 31 #include "chrome/browser/bookmarks/bookmark_model_factory.h" |
| 32 #include "chrome/browser/browser_process.h" | 32 #include "chrome/browser/browser_process.h" |
| 33 #include "chrome/browser/chrome_plugin_service_filter.h" | 33 #include "chrome/browser/chrome_plugin_service_filter.h" |
| 34 #include "chrome/browser/debugger/devtools_window.h" | 34 #include "chrome/browser/debugger/devtools_window.h" |
| 35 #include "chrome/browser/extensions/api/app_runtime/app_runtime_api.h" | 35 #include "chrome/browser/extensions/api/app_runtime/app_runtime_api.h" |
| 36 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h" | 36 #include "chrome/browser/extensions/api/declarative/rules_registry_service.h" |
| 37 #include "chrome/browser/extensions/api/extension_action/extension_actions_api.h
" | 37 #include "chrome/browser/extensions/api/extension_action/extension_actions_api.h
" |
| 38 #include "chrome/browser/extensions/api/media_galleries_private/media_galleries_
private_event_router.h" | 38 #include "chrome/browser/extensions/api/media_galleries_private/media_galleries_
private_event_router.h" |
| 39 #include "chrome/browser/extensions/api/preference/preference_api.h" | 39 #include "chrome/browser/extensions/api/preference/preference_api.h" |
| 40 #include "chrome/browser/extensions/api/push_messaging/push_messaging_api.h" | |
| 41 #include "chrome/browser/extensions/api/runtime/runtime_api.h" | 40 #include "chrome/browser/extensions/api/runtime/runtime_api.h" |
| 42 #include "chrome/browser/extensions/app_notification_manager.h" | 41 #include "chrome/browser/extensions/app_notification_manager.h" |
| 43 #include "chrome/browser/extensions/app_sync_data.h" | 42 #include "chrome/browser/extensions/app_sync_data.h" |
| 44 #include "chrome/browser/extensions/browser_event_router.h" | 43 #include "chrome/browser/extensions/browser_event_router.h" |
| 45 #include "chrome/browser/extensions/component_loader.h" | 44 #include "chrome/browser/extensions/component_loader.h" |
| 46 #include "chrome/browser/extensions/crx_installer.h" | 45 #include "chrome/browser/extensions/crx_installer.h" |
| 47 #include "chrome/browser/extensions/data_deleter.h" | 46 #include "chrome/browser/extensions/data_deleter.h" |
| 48 #include "chrome/browser/extensions/extension_disabled_ui.h" | 47 #include "chrome/browser/extensions/extension_disabled_ui.h" |
| 49 #include "chrome/browser/extensions/extension_error_reporter.h" | 48 #include "chrome/browser/extensions/extension_error_reporter.h" |
| 50 #include "chrome/browser/extensions/extension_error_ui.h" | 49 #include "chrome/browser/extensions/extension_error_ui.h" |
| (...skipping 492 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 543 return; | 542 return; |
| 544 | 543 |
| 545 #if defined(ENABLE_EXTENSIONS) | 544 #if defined(ENABLE_EXTENSIONS) |
| 546 history_event_router_.reset(new HistoryExtensionEventRouter(profile_)); | 545 history_event_router_.reset(new HistoryExtensionEventRouter(profile_)); |
| 547 browser_event_router_.reset(new extensions::BrowserEventRouter(profile_)); | 546 browser_event_router_.reset(new extensions::BrowserEventRouter(profile_)); |
| 548 window_event_router_.reset(new extensions::WindowEventRouter(profile_)); | 547 window_event_router_.reset(new extensions::WindowEventRouter(profile_)); |
| 549 preference_event_router_.reset( | 548 preference_event_router_.reset( |
| 550 new extensions::PreferenceEventRouter(profile_)); | 549 new extensions::PreferenceEventRouter(profile_)); |
| 551 bookmark_event_router_.reset(new BookmarkExtensionEventRouter( | 550 bookmark_event_router_.reset(new BookmarkExtensionEventRouter( |
| 552 BookmarkModelFactory::GetForProfile(profile_))); | 551 BookmarkModelFactory::GetForProfile(profile_))); |
| 553 push_messaging_event_router_.reset( | |
| 554 new extensions::PushMessagingEventRouter(profile_)); | |
| 555 media_galleries_private_event_router_.reset( | 552 media_galleries_private_event_router_.reset( |
| 556 new extensions::MediaGalleriesPrivateEventRouter(profile_)); | 553 new extensions::MediaGalleriesPrivateEventRouter(profile_)); |
| 557 | 554 |
| 558 #if defined(OS_CHROMEOS) | 555 #if defined(OS_CHROMEOS) |
| 559 FileBrowserEventRouterFactory::GetForProfile( | 556 FileBrowserEventRouterFactory::GetForProfile( |
| 560 profile_)->ObserveFileSystemEvents(); | 557 profile_)->ObserveFileSystemEvents(); |
| 561 | 558 |
| 562 input_method_event_router_.reset( | 559 input_method_event_router_.reset( |
| 563 new chromeos::ExtensionInputMethodEventRouter); | 560 new chromeos::ExtensionInputMethodEventRouter); |
| 564 | 561 |
| 565 ExtensionMediaPlayerEventRouter::GetInstance()->Init(profile_); | 562 ExtensionMediaPlayerEventRouter::GetInstance()->Init(profile_); |
| 566 extensions::InputImeEventRouter::GetInstance()->Init(); | 563 extensions::InputImeEventRouter::GetInstance()->Init(); |
| 567 #endif // defined(OS_CHROMEOS) | 564 #endif // defined(OS_CHROMEOS) |
| 568 #endif // defined(ENABLE_EXTENSIONS) | 565 #endif // defined(ENABLE_EXTENSIONS) |
| 569 event_routers_initialized_ = true; | 566 event_routers_initialized_ = true; |
| 570 } | 567 } |
| 571 | 568 |
| 572 void ExtensionService::OnProfileSyncServiceShutdown() { | |
| 573 // TODO(akalin): Move this block to Shutdown() once | |
| 574 // http://crbug.com/153827 is fixed. | |
| 575 if (push_messaging_event_router_.get()) | |
| 576 push_messaging_event_router_->Shutdown(); | |
| 577 } | |
| 578 | |
| 579 void ExtensionService::Shutdown() { | 569 void ExtensionService::Shutdown() { |
| 580 // Do nothing for now. | 570 // Do nothing for now. |
| 581 } | 571 } |
| 582 | 572 |
| 583 const Extension* ExtensionService::GetExtensionById( | 573 const Extension* ExtensionService::GetExtensionById( |
| 584 const std::string& id, bool include_disabled) const { | 574 const std::string& id, bool include_disabled) const { |
| 585 int include_mask = INCLUDE_ENABLED; | 575 int include_mask = INCLUDE_ENABLED; |
| 586 if (include_disabled) { | 576 if (include_disabled) { |
| 587 // Include blacklisted extensions here because there are hundreds of | 577 // Include blacklisted extensions here because there are hundreds of |
| 588 // callers of this function, and many might assume that this includes those | 578 // callers of this function, and many might assume that this includes those |
| (...skipping 2629 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3218 scoped_refptr<const Extension> extension = GetInstalledExtension(*it); | 3208 scoped_refptr<const Extension> extension = GetInstalledExtension(*it); |
| 3219 DCHECK(extension); | 3209 DCHECK(extension); |
| 3220 if (!extension) | 3210 if (!extension) |
| 3221 continue; | 3211 continue; |
| 3222 blacklisted_extensions_.Insert(extension); | 3212 blacklisted_extensions_.Insert(extension); |
| 3223 UnloadExtension(*it, extension_misc::UNLOAD_REASON_BLACKLIST); | 3213 UnloadExtension(*it, extension_misc::UNLOAD_REASON_BLACKLIST); |
| 3224 } | 3214 } |
| 3225 | 3215 |
| 3226 IdentifyAlertableExtensions(); | 3216 IdentifyAlertableExtensions(); |
| 3227 } | 3217 } |
| OLD | NEW |