summaryrefslogtreecommitdiffstats
path: root/extensions/browser
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/browser')
-rw-r--r--extensions/browser/management_policy.cc4
-rw-r--r--extensions/browser/management_policy.h4
2 files changed, 8 insertions, 0 deletions
diff --git a/extensions/browser/management_policy.cc b/extensions/browser/management_policy.cc
index 156ba64..b09734a 100644
--- a/extensions/browser/management_policy.cc
+++ b/extensions/browser/management_policy.cc
@@ -61,6 +61,10 @@ void ManagementPolicy::UnregisterProvider(Provider* provider) {
providers_.erase(provider);
}
+void ManagementPolicy::RegisterProviders(std::vector<Provider*> providers) {
+ providers_.insert(providers.begin(), providers.end());
+}
+
bool ManagementPolicy::UserMayLoad(const Extension* extension,
base::string16* error) const {
return ApplyToProviderList(
diff --git a/extensions/browser/management_policy.h b/extensions/browser/management_policy.h
index a857822..09b59b1 100644
--- a/extensions/browser/management_policy.h
+++ b/extensions/browser/management_policy.h
@@ -7,6 +7,7 @@
#include <set>
#include <string>
+#include <vector>
#include "base/basictypes.h"
#include "extensions/common/extension.h"
@@ -92,6 +93,9 @@ class ManagementPolicy {
void RegisterProvider(Provider* provider);
void UnregisterProvider(Provider* provider);
+ // Like RegisterProvider(), but registers multiple providers instead.
+ void RegisterProviders(std::vector<Provider*> providers);
+
// Returns true if the user is permitted to install, load, and run the given
// extension. If not, |error| may be set to an appropriate message.
bool UserMayLoad(const Extension* extension, base::string16* error) const;