summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_service.h
diff options
context:
space:
mode:
authorpam@chromium.org <pam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-02 13:14:14 +0000
committerpam@chromium.org <pam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-02 13:14:14 +0000
commit6518715de7d13fee24c654377a29da2e643b05e5 (patch)
tree1e916cbec83cc4dcbc4f8b7dcffc3368f91da3f9 /chrome/browser/extensions/extension_service.h
parentbb5035d4a6048baf8b1f2801114d058134833a40 (diff)
downloadchromium_src-6518715de7d13fee24c654377a29da2e643b05e5.zip
chromium_src-6518715de7d13fee24c654377a29da2e643b05e5.tar.gz
chromium_src-6518715de7d13fee24c654377a29da2e643b05e5.tar.bz2
Refactor the various ways to control what users can do to extensions.
Add an ExtensionManagementPolicy class, held by the ExtensionService, that registers delegates and mediates questions about what can be done to extensions (install, uninstall, modify, etc.). Convert existing mechanisms to control extension operations, namely administrator policy black/whitelists and component extension requirements, to use this abstraction. In addition to cleaning up existing mechanisms, this will support the control managed mode needs to impose (in an upcoming patch). BUG=117987 TEST=covered by unit, browser, and api tests Review URL: https://chromiumcodereview.appspot.com/10382149 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140194 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_service.h')
-rw-r--r--chrome/browser/extensions/extension_service.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/chrome/browser/extensions/extension_service.h b/chrome/browser/extensions/extension_service.h
index 90e31f5..911e52a 100644
--- a/chrome/browser/extensions/extension_service.h
+++ b/chrome/browser/extensions/extension_service.h
@@ -20,6 +20,7 @@
#include "base/memory/ref_counted.h"
#include "base/memory/weak_ptr.h"
#include "base/property_bag.h"
+#include "base/string16.h"
#include "base/time.h"
#include "base/tuple.h"
#include "chrome/browser/extensions/api/api_resource_controller.h"
@@ -329,7 +330,7 @@ class ExtensionService
// to ExtensionPrefs some other way.
virtual bool UninstallExtension(std::string extension_id,
bool external_uninstall,
- std::string* error);
+ string16* error);
virtual bool IsExtensionEnabled(
const std::string& extension_id) const OVERRIDE;
@@ -410,7 +411,7 @@ class ExtensionService
const std::vector<std::string>& blacklist) OVERRIDE;
// Go through each extension and unload those that the network admin has
- // put on the blacklist (not to be confused with the Google managed blacklist
+ // put on the blacklist (not to be confused with the Google-managed blacklist)
// set of extensions.
virtual void CheckAdminBlacklist() OVERRIDE;