diff options
author | sudarsana.nagineni <sudarsana.nagineni@intel.com> | 2015-06-05 05:01:50 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-06-05 12:03:21 +0000 |
commit | db93178bcaaf7e99ebb18bd51fa99b2feaf47e1f (patch) | |
tree | 41b50793eda9887814b27394523799f6cd1eaf84 | |
parent | 76f36a8362a3e817cc3ec721d591f2f8878dc0c7 (diff) | |
download | chromium_src-db93178bcaaf7e99ebb18bd51fa99b2feaf47e1f.zip chromium_src-db93178bcaaf7e99ebb18bd51fa99b2feaf47e1f.tar.gz chromium_src-db93178bcaaf7e99ebb18bd51fa99b2feaf47e1f.tar.bz2 |
[Extensions] Add GetInstalledExtension() method to ExtensionRegistry
This CL adds GetInstalledExtension() method to ExtensionRegistry and
uses it instead of deprecated ExtensionService::GetInstalledExtension()
in chrome/browser/ui/app_list/.
Part of removing the deprecated GetInstalledExtension() call
from the ExtensionService.
BUG=489687
Review URL: https://codereview.chromium.org/1130353010
Cr-Commit-Position: refs/heads/master@{#333036}
10 files changed, 34 insertions, 37 deletions
diff --git a/chrome/browser/extensions/extension_service.h b/chrome/browser/extensions/extension_service.h index 834f7c1..01efc61 100644 --- a/chrome/browser/extensions/extension_service.h +++ b/chrome/browser/extensions/extension_service.h @@ -115,7 +115,7 @@ class ExtensionServiceInterface // Looks up an extension by ID, regardless of whether it's enabled, // disabled, blacklisted, or terminated. Use instead: // - // ExtensionRegistry::GetExtensionById(id, ExtensionRegistry::EVERYTHING). + // ExtensionRegistry::GetInstalledExtension(id). virtual const extensions::Extension* GetInstalledExtension( const std::string& id) const = 0; diff --git a/chrome/browser/ui/app_list/app_list_controller_delegate.cc b/chrome/browser/ui/app_list/app_list_controller_delegate.cc index 0e91330..e6a19fc 100644 --- a/chrome/browser/ui/app_list/app_list_controller_delegate.cc +++ b/chrome/browser/ui/app_list/app_list_controller_delegate.cc @@ -5,7 +5,6 @@ #include "chrome/browser/ui/app_list/app_list_controller_delegate.h" #include "base/metrics/histogram.h" -#include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/extensions/extension_util.h" #include "chrome/browser/extensions/install_tracker_factory.h" #include "chrome/browser/extensions/launch_util.h" @@ -38,10 +37,9 @@ namespace { const extensions::Extension* GetExtension(Profile* profile, const std::string& extension_id) { - const ExtensionService* service = - extensions::ExtensionSystem::Get(profile)->extension_service(); + const ExtensionRegistry* registry = ExtensionRegistry::Get(profile); const extensions::Extension* extension = - service->GetInstalledExtension(extension_id); + registry->GetInstalledExtension(extension_id); return extension; } @@ -99,11 +97,7 @@ void AppListControllerDelegate::DoShowAppInfoFlow( Profile* profile, const std::string& extension_id) { DCHECK(CanDoShowAppInfoFlow()); - ExtensionService* service = - extensions::ExtensionSystem::Get(profile)->extension_service(); - DCHECK(service); - const extensions::Extension* extension = service->GetInstalledExtension( - extension_id); + const extensions::Extension* extension = GetExtension(profile, extension_id); DCHECK(extension); OnShowChildDialog(); diff --git a/chrome/browser/ui/app_list/app_list_controller_delegate_impl.cc b/chrome/browser/ui/app_list/app_list_controller_delegate_impl.cc index 61b4542..4733461 100644 --- a/chrome/browser/ui/app_list/app_list_controller_delegate_impl.cc +++ b/chrome/browser/ui/app_list/app_list_controller_delegate_impl.cc @@ -5,7 +5,6 @@ #include "chrome/browser/ui/app_list/app_list_controller_delegate_impl.h" #include "chrome/browser/browser_process.h" -#include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/profiles/profile_manager.h" #include "chrome/browser/ui/app_list/app_list_service_impl.h" #include "chrome/browser/ui/browser_commands.h" @@ -14,7 +13,7 @@ #include "chrome/browser/ui/extensions/app_launch_params.h" #include "chrome/browser/ui/extensions/application_launch.h" #include "chrome/common/extensions/manifest_handlers/app_launch_info.h" -#include "extensions/browser/extension_system.h" +#include "extensions/browser/extension_registry.h" #include "extensions/common/constants.h" #include "extensions/common/extension.h" #include "net/base/url_util.h" @@ -64,10 +63,9 @@ void AppListControllerDelegateImpl::DoCreateShortcutsFlow( Profile* profile, const std::string& extension_id) { DCHECK(CanDoCreateShortcutsFlow()); - ExtensionService* service = - extensions::ExtensionSystem::Get(profile)->extension_service(); - DCHECK(service); - const extensions::Extension* extension = service->GetInstalledExtension( + extensions::ExtensionRegistry* registry = + extensions::ExtensionRegistry::Get(profile); + const extensions::Extension* extension = registry->GetInstalledExtension( extension_id); DCHECK(extension); diff --git a/chrome/browser/ui/app_list/app_list_syncable_service.cc b/chrome/browser/ui/app_list/app_list_syncable_service.cc index 0932d2c..b3bc806 100644 --- a/chrome/browser/ui/app_list/app_list_syncable_service.cc +++ b/chrome/browser/ui/app_list/app_list_syncable_service.cc @@ -121,11 +121,9 @@ bool IsUnRemovableDefaultApp(const std::string& id) { } void UninstallExtension(ExtensionService* service, const std::string& id) { - if (service && service->GetInstalledExtension(id)) { - service->UninstallExtension(id, - extensions::UNINSTALL_REASON_SYNC, - base::Bind(&base::DoNothing), - NULL); + if (service) { + ExtensionService::UninstallExtensionHelper( + service, id, extensions::UNINSTALL_REASON_SYNC); } } diff --git a/chrome/browser/ui/app_list/extension_app_item.cc b/chrome/browser/ui/app_list/extension_app_item.cc index fdab9fe..471182c 100644 --- a/chrome/browser/ui/app_list/extension_app_item.cc +++ b/chrome/browser/ui/app_list/extension_app_item.cc @@ -5,7 +5,6 @@ #include "chrome/browser/ui/app_list/extension_app_item.h" #include "base/prefs/pref_service.h" -#include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/extensions/extension_util.h" #include "chrome/browser/extensions/launch_util.h" #include "chrome/browser/profiles/profile.h" @@ -19,7 +18,7 @@ #include "content/public/browser/user_metrics.h" #include "extensions/browser/app_sorting.h" #include "extensions/browser/extension_prefs.h" -#include "extensions/browser/extension_system.h" +#include "extensions/browser/extension_registry.h" #include "extensions/common/extension.h" #include "extensions/common/extension_icon_set.h" #include "extensions/common/manifest_handlers/icons_handler.h" @@ -229,9 +228,10 @@ void ExtensionAppItem::Move(const ExtensionAppItem* prev, } const Extension* ExtensionAppItem::GetExtension() const { - const ExtensionService* service = - extensions::ExtensionSystem::Get(profile_)->extension_service(); - const Extension* extension = service->GetInstalledExtension(extension_id_); + const extensions::ExtensionRegistry* registry = + extensions::ExtensionRegistry::Get(profile_); + const Extension* extension = registry->GetInstalledExtension( + extension_id_); return extension; } diff --git a/chrome/browser/ui/app_list/extension_app_model_builder_unittest.cc b/chrome/browser/ui/app_list/extension_app_model_builder_unittest.cc index e31e712..b5aa353 100644 --- a/chrome/browser/ui/app_list/extension_app_model_builder_unittest.cc +++ b/chrome/browser/ui/app_list/extension_app_model_builder_unittest.cc @@ -23,6 +23,7 @@ #include "chrome/test/base/testing_profile.h" #include "extensions/browser/app_sorting.h" #include "extensions/browser/extension_prefs.h" +#include "extensions/browser/extension_registry.h" #include "extensions/browser/uninstall_reason.h" #include "extensions/common/constants.h" #include "extensions/common/extension_set.h" @@ -183,7 +184,7 @@ TEST_F(ExtensionAppModelBuilderTest, Uninstall) { TEST_F(ExtensionAppModelBuilderTest, UninstallTerminatedApp) { const extensions::Extension* app = - service_->GetInstalledExtension(kPackagedApp2Id); + registry()->GetInstalledExtension(kPackagedApp2Id); ASSERT_TRUE(app != NULL); // Simulate an app termination. diff --git a/chrome/browser/ui/app_list/extension_uninstaller.cc b/chrome/browser/ui/app_list/extension_uninstaller.cc index 7927afa..d6371c7 100644 --- a/chrome/browser/ui/app_list/extension_uninstaller.cc +++ b/chrome/browser/ui/app_list/extension_uninstaller.cc @@ -4,10 +4,9 @@ #include "chrome/browser/ui/app_list/extension_uninstaller.h" -#include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ui/app_list/app_list_controller_delegate.h" -#include "extensions/browser/extension_system.h" +#include "extensions/browser/extension_registry.h" #include "extensions/browser/uninstall_reason.h" #include "extensions/common/extension.h" @@ -25,8 +24,8 @@ ExtensionUninstaller::~ExtensionUninstaller() { void ExtensionUninstaller::Run() { const extensions::Extension* extension = - extensions::ExtensionSystem::Get(profile_)->extension_service()-> - GetInstalledExtension(app_id_); + extensions::ExtensionRegistry::Get(profile_)->GetInstalledExtension( + app_id_); if (!extension) { CleanUp(); return; diff --git a/chrome/browser/ui/app_list/search/app_result.cc b/chrome/browser/ui/app_list/search/app_result.cc index ec50023..89dbe9c 100644 --- a/chrome/browser/ui/app_list/search/app_result.cc +++ b/chrome/browser/ui/app_list/search/app_result.cc @@ -5,7 +5,6 @@ #include "chrome/browser/ui/app_list/search/app_result.h" #include "base/time/time.h" -#include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/extensions/extension_util.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/ui/app_list/app_context_menu.h" @@ -15,7 +14,6 @@ #include "chrome/common/extensions/extension_metrics.h" #include "content/public/browser/user_metrics.h" #include "extensions/browser/extension_registry.h" -#include "extensions/browser/extension_system.h" #include "extensions/browser/extension_system_provider.h" #include "extensions/browser/extensions_browser_client.h" #include "extensions/common/constants.h" @@ -41,8 +39,8 @@ AppResult::AppResult(Profile* profile, set_display_type(is_recommendation ? DISPLAY_RECOMMENDATION : DISPLAY_TILE); const extensions::Extension* extension = - extensions::ExtensionSystem::Get(profile_)->extension_service() - ->GetInstalledExtension(app_id_); + extensions::ExtensionRegistry::Get(profile_)->GetInstalledExtension( + app_id_); DCHECK(extension); is_platform_app_ = extension->is_platform_app(); @@ -83,8 +81,8 @@ void AppResult::UpdateFromLastLaunched(const base::Time& current_time, void AppResult::Open(int event_flags) { RecordHistogram(APP_SEARCH_RESULT); const extensions::Extension* extension = - extensions::ExtensionSystem::Get(profile_)->extension_service() - ->GetInstalledExtension(app_id_); + extensions::ExtensionRegistry::Get(profile_)->GetInstalledExtension( + app_id_); if (!extension) return; diff --git a/extensions/browser/extension_registry.cc b/extensions/browser/extension_registry.cc index 65c8b5e..c59d635 100644 --- a/extensions/browser/extension_registry.cc +++ b/extensions/browser/extension_registry.cc @@ -132,6 +132,11 @@ const Extension* ExtensionRegistry::GetExtensionById(const std::string& id, return NULL; } +const Extension* ExtensionRegistry::GetInstalledExtension( + const std::string& id) const { + return GetExtensionById(id, ExtensionRegistry::EVERYTHING); +} + bool ExtensionRegistry::AddEnabled( const scoped_refptr<const Extension>& extension) { return enabled_extensions_.Insert(extension); diff --git a/extensions/browser/extension_registry.h b/extensions/browser/extension_registry.h index fa5b493..fb7a9a5 100644 --- a/extensions/browser/extension_registry.h +++ b/extensions/browser/extension_registry.h @@ -123,6 +123,10 @@ class ExtensionRegistry : public KeyedService { const Extension* GetExtensionById(const std::string& id, int include_mask) const; + // Looks up an extension by ID, regardless of whether it's enabled, + // disabled, blacklisted, or terminated. + const Extension* GetInstalledExtension(const std::string& id) const; + // Adds the specified extension to the enabled set. The registry becomes an // owner. Any previous extension with the same ID is removed. // Returns true if there is no previous extension. |