summaryrefslogtreecommitdiffstats
path: root/extensions
diff options
context:
space:
mode:
authorrdevlin.cronin@chromium.org <rdevlin.cronin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-06 21:47:26 +0000
committerrdevlin.cronin@chromium.org <rdevlin.cronin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-06 21:47:26 +0000
commit076ebedaa781461c668ea435ef3af3ca707775d5 (patch)
tree5189adac73248df281db674fff5ce4c08dda0ce8 /extensions
parent4bd4064aede02bd5ae1c0a4b7a01af4830abb47a (diff)
downloadchromium_src-076ebedaa781461c668ea435ef3af3ca707775d5.zip
chromium_src-076ebedaa781461c668ea435ef3af3ca707775d5.tar.gz
chromium_src-076ebedaa781461c668ea435ef3af3ca707775d5.tar.bz2
Remove deprecated permissions functions from Extension
The methods GetActivePermission() and HasAPIPermission() have been deprecated for more than a year. Finally remove them. Also clean up some includes in extension.h, and fix transitive includes. BUG=379356 TBR=atwilson@chromium.org (c/b/background) TBR=yurys@chromium.org (c/b/devtools) TBR=bauerb@chromium.org (c/b/managed_mode) TBR=dalecurtis@chromium.org (c/b/media) TBR=dewittj@chromium.org (c/b/notifications) TBR=msw@chromium.org (c/b/ui) All TBRs are for strictly mechanical changes - no functional difference. Review URL: https://codereview.chromium.org/314113010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275531 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'extensions')
-rw-r--r--extensions/browser/api/storage/local_value_store_cache.cc4
-rw-r--r--extensions/browser/api/storage/settings_test_util.cc2
-rw-r--r--extensions/browser/event_router.cc6
-rw-r--r--extensions/browser/info_map.cc6
-rw-r--r--extensions/browser/info_map.h1
-rw-r--r--extensions/browser/info_map_unittest.cc20
-rw-r--r--extensions/common/extension.cc15
-rw-r--r--extensions/common/extension.h10
-rw-r--r--extensions/common/extension_messages.cc15
-rw-r--r--extensions/common/extension_set.h2
-rw-r--r--extensions/common/manifest_handlers/externally_connectable_unittest.cc16
-rw-r--r--extensions/common/manifest_handlers/shared_module_info.cc3
-rw-r--r--extensions/common/permissions/permissions_data_unittest.cc11
-rw-r--r--extensions/renderer/dispatcher.cc2
14 files changed, 61 insertions, 52 deletions
diff --git a/extensions/browser/api/storage/local_value_store_cache.cc b/extensions/browser/api/storage/local_value_store_cache.cc
index 6946f33..4865b31 100644
--- a/extensions/browser/api/storage/local_value_store_cache.cc
+++ b/extensions/browser/api/storage/local_value_store_cache.cc
@@ -18,6 +18,7 @@
#include "extensions/common/constants.h"
#include "extensions/common/extension.h"
#include "extensions/common/permissions/api_permission.h"
+#include "extensions/common/permissions/permissions_data.h"
using content::BrowserThread;
@@ -62,7 +63,8 @@ void LocalValueStoreCache::RunWithValueStoreForExtension(
// A neat way to implement unlimited storage; if the extension has the
// unlimited storage permission, force through all calls to Set().
- if (extension->HasAPIPermission(APIPermission::kUnlimitedStorage)) {
+ if (extension->permissions_data()->HasAPIPermission(
+ APIPermission::kUnlimitedStorage)) {
WeakUnlimitedSettingsStorage unlimited_storage(storage);
callback.Run(&unlimited_storage);
} else {
diff --git a/extensions/browser/api/storage/settings_test_util.cc b/extensions/browser/api/storage/settings_test_util.cc
index a44a5a0d..c1ac660 100644
--- a/extensions/browser/api/storage/settings_test_util.cc
+++ b/extensions/browser/api/storage/settings_test_util.cc
@@ -93,7 +93,7 @@ scoped_refptr<const Extension> AddExtensionWithIdAndPermissions(
for (std::set<std::string>::const_iterator it = permissions_set.begin();
it != permissions_set.end(); ++it) {
- DCHECK(extension->HasAPIPermission(*it));
+ DCHECK(extension->permissions_data()->HasAPIPermission(*it));
}
return extension;
diff --git a/extensions/browser/event_router.cc b/extensions/browser/event_router.cc
index c441195..3c6679f 100644
--- a/extensions/browser/event_router.cc
+++ b/extensions/browser/event_router.cc
@@ -30,6 +30,7 @@
#include "extensions/common/extension_urls.h"
#include "extensions/common/manifest_handlers/background_info.h"
#include "extensions/common/manifest_handlers/incognito_info.h"
+#include "extensions/common/permissions/permissions_data.h"
using base::DictionaryValue;
using base::ListValue;
@@ -533,8 +534,9 @@ void EventRouter::DispatchEventToProcess(const std::string& extension_id,
// permission for it (or if the event originated from itself).
if (!event->event_url.is_empty() &&
event->event_url.host() != extension->id() &&
- !extension->GetActivePermissions()->HasEffectiveAccessToURL(
- event->event_url)) {
+ !extension->permissions_data()
+ ->active_permissions()
+ ->HasEffectiveAccessToURL(event->event_url)) {
return;
}
diff --git a/extensions/browser/info_map.cc b/extensions/browser/info_map.cc
index 42b85c5..1042f63 100644
--- a/extensions/browser/info_map.cc
+++ b/extensions/browser/info_map.cc
@@ -10,6 +10,7 @@
#include "extensions/common/extension.h"
#include "extensions/common/extension_set.h"
#include "extensions/common/manifest_handlers/incognito_info.h"
+#include "extensions/common/permissions/permissions_data.h"
using content::BrowserThread;
@@ -150,7 +151,8 @@ void InfoMap::GetExtensionsWithAPIPermissionForSecurityOrigin(
if (origin.SchemeIs(kExtensionScheme)) {
const std::string& id = origin.host();
const Extension* extension = extensions_.GetByID(id);
- if (extension && extension->HasAPIPermission(permission) &&
+ if (extension &&
+ extension->permissions_data()->HasAPIPermission(permission) &&
process_map_.Contains(id, process_id)) {
extensions->Insert(extension);
}
@@ -161,7 +163,7 @@ void InfoMap::GetExtensionsWithAPIPermissionForSecurityOrigin(
for (; i != extensions_.end(); ++i) {
if ((*i)->web_extent().MatchesSecurityOrigin(origin) &&
process_map_.Contains((*i)->id(), process_id) &&
- (*i)->HasAPIPermission(permission)) {
+ (*i)->permissions_data()->HasAPIPermission(permission)) {
extensions->Insert(*i);
}
}
diff --git a/extensions/browser/info_map.h b/extensions/browser/info_map.h
index 5dfc9c2..5b1f8a3 100644
--- a/extensions/browser/info_map.h
+++ b/extensions/browser/info_map.h
@@ -14,6 +14,7 @@
#include "extensions/browser/process_map.h"
#include "extensions/browser/quota_service.h"
#include "extensions/common/extension_set.h"
+#include "extensions/common/permissions/api_permission.h"
namespace extensions {
class ContentVerifier;
diff --git a/extensions/browser/info_map_unittest.cc b/extensions/browser/info_map_unittest.cc
index d01fa61..c953468 100644
--- a/extensions/browser/info_map_unittest.cc
+++ b/extensions/browser/info_map_unittest.cc
@@ -10,6 +10,7 @@
#include "extensions/browser/info_map.h"
#include "extensions/common/extension.h"
#include "extensions/common/manifest_constants.h"
+#include "extensions/common/permissions/permissions_data.h"
#include "testing/gtest/include/gtest/gtest.h"
using content::BrowserThread;
@@ -144,16 +145,25 @@ TEST_F(InfoMapTest, CheckPermissions) {
// chrome-extension URL or from its web extent.
const Extension* match = info_map->extensions().GetExtensionOrAppByURL(
app->GetResourceURL("a.html"));
- EXPECT_TRUE(match && match->HasAPIPermission(APIPermission::kNotification));
+ EXPECT_TRUE(match &&
+ match->permissions_data()->HasAPIPermission(
+ APIPermission::kNotification));
match = info_map->extensions().GetExtensionOrAppByURL(app_url);
- EXPECT_TRUE(match && match->HasAPIPermission(APIPermission::kNotification));
- EXPECT_FALSE(match && match->HasAPIPermission(APIPermission::kTab));
+ EXPECT_TRUE(match &&
+ match->permissions_data()->HasAPIPermission(
+ APIPermission::kNotification));
+ EXPECT_FALSE(
+ match &&
+ match->permissions_data()->HasAPIPermission(APIPermission::kTab));
// The extension should have the tabs permission.
match = info_map->extensions().GetExtensionOrAppByURL(
extension->GetResourceURL("a.html"));
- EXPECT_TRUE(match && match->HasAPIPermission(APIPermission::kTab));
- EXPECT_FALSE(match && match->HasAPIPermission(APIPermission::kNotification));
+ EXPECT_TRUE(match &&
+ match->permissions_data()->HasAPIPermission(APIPermission::kTab));
+ EXPECT_FALSE(match &&
+ match->permissions_data()->HasAPIPermission(
+ APIPermission::kNotification));
// Random URL should not have any permissions.
GURL evil_url("http://evil.com/a.html");
diff --git a/extensions/common/extension.cc b/extensions/common/extension.cc
index 9179d46..8fab82b 100644
--- a/extensions/common/extension.cc
+++ b/extensions/common/extension.cc
@@ -28,12 +28,11 @@
#include "extensions/common/manifest_constants.h"
#include "extensions/common/manifest_handler.h"
#include "extensions/common/manifest_handlers/permissions_parser.h"
-#include "extensions/common/permissions/api_permission_set.h"
#include "extensions/common/permissions/permission_set.h"
#include "extensions/common/permissions/permissions_data.h"
#include "extensions/common/permissions/permissions_info.h"
#include "extensions/common/switches.h"
-#include "extensions/common/url_pattern_set.h"
+#include "extensions/common/url_pattern.h"
#include "net/base/filename_util.h"
#include "url/url_util.h"
@@ -287,18 +286,6 @@ GURL Extension::GetBaseURLFromExtensionId(const std::string& extension_id) {
url::kStandardSchemeSeparator + extension_id + "/");
}
-bool Extension::HasAPIPermission(APIPermission::ID permission) const {
- return permissions_data_->HasAPIPermission(permission);
-}
-
-bool Extension::HasAPIPermission(const std::string& permission_name) const {
- return permissions_data_->HasAPIPermission(permission_name);
-}
-
-scoped_refptr<const PermissionSet> Extension::GetActivePermissions() const {
- return permissions_data_->active_permissions();
-}
-
bool Extension::ShowConfigureContextMenus() const {
// Don't show context menu for component extensions. We might want to show
// options for component extension button but now there is no component
diff --git a/extensions/common/extension.h b/extensions/common/extension.h
index 1423adb..cf5e85c 100644
--- a/extensions/common/extension.h
+++ b/extensions/common/extension.h
@@ -23,8 +23,6 @@
#include "extensions/common/extension_resource.h"
#include "extensions/common/install_warning.h"
#include "extensions/common/manifest.h"
-#include "extensions/common/permissions/api_permission.h"
-#include "extensions/common/url_pattern.h"
#include "extensions/common/url_pattern_set.h"
#include "ui/base/accelerators/accelerator.h"
#include "ui/gfx/size.h"
@@ -43,8 +41,6 @@ class ImageSkia;
}
namespace extensions {
-class APIPermissionSet;
-class ManifestPermissionSet;
class PermissionSet;
class PermissionsData;
class PermissionsParser;
@@ -250,12 +246,6 @@ class Extension : public base::RefCountedThreadSafe<Extension> {
// Returns the base extension url for a given |extension_id|.
static GURL GetBaseURLFromExtensionId(const ExtensionId& extension_id);
- // DEPRECATED: These methods have been moved to PermissionsData.
- // TODO(rdevlin.cronin): remove these once all calls have been updated.
- bool HasAPIPermission(APIPermission::ID permission) const;
- bool HasAPIPermission(const std::string& permission_name) const;
- scoped_refptr<const PermissionSet> GetActivePermissions() const;
-
// Whether context menu should be shown for page and browser actions.
bool ShowConfigureContextMenus() const;
diff --git a/extensions/common/extension_messages.cc b/extensions/common/extension_messages.cc
index ae1c180..054b2fa 100644
--- a/extensions/common/extension_messages.cc
+++ b/extensions/common/extension_messages.cc
@@ -33,11 +33,16 @@ ExtensionMsg_Loaded_Params::ExtensionMsg_Loaded_Params(
: manifest(extension->manifest()->value()->DeepCopy()),
location(extension->location()),
path(extension->path()),
- apis(extension->GetActivePermissions()->apis()),
- manifest_permissions(
- extension->GetActivePermissions()->manifest_permissions()),
- explicit_hosts(extension->GetActivePermissions()->explicit_hosts()),
- scriptable_hosts(extension->GetActivePermissions()->scriptable_hosts()),
+ apis(extension->permissions_data()->active_permissions()->apis()),
+ manifest_permissions(extension->permissions_data()
+ ->active_permissions()
+ ->manifest_permissions()),
+ explicit_hosts(extension->permissions_data()
+ ->active_permissions()
+ ->explicit_hosts()),
+ scriptable_hosts(extension->permissions_data()
+ ->active_permissions()
+ ->scriptable_hosts()),
id(extension->id()),
creation_flags(extension->creation_flags()) {
}
diff --git a/extensions/common/extension_set.h b/extensions/common/extension_set.h
index 6b41ae6..c46163f 100644
--- a/extensions/common/extension_set.h
+++ b/extensions/common/extension_set.h
@@ -9,7 +9,7 @@
#include <map>
#include <string>
-#include "base/callback_forward.h"
+#include "base/callback.h"
#include "base/gtest_prod_util.h"
#include "base/memory/ref_counted.h"
#include "extensions/common/extension.h"
diff --git a/extensions/common/manifest_handlers/externally_connectable_unittest.cc b/extensions/common/manifest_handlers/externally_connectable_unittest.cc
index 41b2d32..77acf35 100644
--- a/extensions/common/manifest_handlers/externally_connectable_unittest.cc
+++ b/extensions/common/manifest_handlers/externally_connectable_unittest.cc
@@ -9,6 +9,7 @@
#include "extensions/common/error_utils.h"
#include "extensions/common/manifest_constants.h"
#include "extensions/common/manifest_handlers/externally_connectable.h"
+#include "extensions/common/permissions/permissions_data.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -38,7 +39,8 @@ TEST_F(ExternallyConnectableTest, IDsAndMatches) {
LoadAndExpectSuccess("externally_connectable_ids_and_matches.json");
ASSERT_TRUE(extension.get());
- EXPECT_TRUE(extension->HasAPIPermission(APIPermission::kWebConnectable));
+ EXPECT_TRUE(extension->permissions_data()->HasAPIPermission(
+ APIPermission::kWebConnectable));
ExternallyConnectableInfo* info =
ExternallyConnectableInfo::Get(extension.get());
@@ -99,7 +101,8 @@ TEST_F(ExternallyConnectableTest, IDs) {
LoadAndExpectSuccess("externally_connectable_ids.json");
ASSERT_TRUE(extension.get());
- EXPECT_FALSE(extension->HasAPIPermission(APIPermission::kWebConnectable));
+ EXPECT_FALSE(extension->permissions_data()->HasAPIPermission(
+ APIPermission::kWebConnectable));
ExternallyConnectableInfo* info =
ExternallyConnectableInfo::Get(extension.get());
@@ -119,7 +122,8 @@ TEST_F(ExternallyConnectableTest, Matches) {
LoadAndExpectSuccess("externally_connectable_matches.json");
ASSERT_TRUE(extension.get());
- EXPECT_TRUE(extension->HasAPIPermission(APIPermission::kWebConnectable));
+ EXPECT_TRUE(extension->permissions_data()->HasAPIPermission(
+ APIPermission::kWebConnectable));
ExternallyConnectableInfo* info =
ExternallyConnectableInfo::Get(extension.get());
@@ -161,7 +165,8 @@ TEST_F(ExternallyConnectableTest, MatchesWithTlsChannelId) {
"externally_connectable_matches_tls_channel_id.json");
ASSERT_TRUE(extension.get());
- EXPECT_TRUE(extension->HasAPIPermission(APIPermission::kWebConnectable));
+ EXPECT_TRUE(extension->permissions_data()->HasAPIPermission(
+ APIPermission::kWebConnectable));
ExternallyConnectableInfo* info =
ExternallyConnectableInfo::Get(extension.get());
@@ -185,7 +190,8 @@ TEST_F(ExternallyConnectableTest, AllIDs) {
LoadAndExpectSuccess("externally_connectable_all_ids.json");
ASSERT_TRUE(extension.get());
- EXPECT_FALSE(extension->HasAPIPermission(APIPermission::kWebConnectable));
+ EXPECT_FALSE(extension->permissions_data()->HasAPIPermission(
+ APIPermission::kWebConnectable));
ExternallyConnectableInfo* info =
ExternallyConnectableInfo::Get(extension.get());
diff --git a/extensions/common/manifest_handlers/shared_module_info.cc b/extensions/common/manifest_handlers/shared_module_info.cc
index 66a06e9..38eef6e 100644
--- a/extensions/common/manifest_handlers/shared_module_info.cc
+++ b/extensions/common/manifest_handlers/shared_module_info.cc
@@ -14,6 +14,7 @@
#include "extensions/common/error_utils.h"
#include "extensions/common/manifest_constants.h"
#include "extensions/common/permissions/permission_set.h"
+#include "extensions/common/permissions/permissions_data.h"
namespace extensions {
@@ -243,7 +244,7 @@ bool SharedModuleHandler::Validate(
// own, instead they rely on the permissions of the extensions which import
// them.
if (SharedModuleInfo::IsSharedModule(extension) &&
- !extension->GetActivePermissions()->IsEmpty()) {
+ !extension->permissions_data()->active_permissions()->IsEmpty()) {
*error = errors::kInvalidExportPermissions;
return false;
}
diff --git a/extensions/common/permissions/permissions_data_unittest.cc b/extensions/common/permissions/permissions_data_unittest.cc
index f7fad22..f9f1b6a 100644
--- a/extensions/common/permissions/permissions_data_unittest.cc
+++ b/extensions/common/permissions/permissions_data_unittest.cc
@@ -133,11 +133,14 @@ TEST(ExtensionPermissionsTest, EffectiveHostPermissions) {
hosts = extension->permissions_data()->GetEffectiveHostPermissions();
EXPECT_TRUE(hosts.MatchesURL(GURL("http://google.com")));
EXPECT_TRUE(hosts.MatchesURL(GURL("http://www.reddit.com")));
- EXPECT_TRUE(extension->GetActivePermissions()->HasEffectiveAccessToURL(
- GURL("http://www.reddit.com")));
+ EXPECT_TRUE(extension->permissions_data()
+ ->active_permissions()
+ ->HasEffectiveAccessToURL(GURL("http://www.reddit.com")));
EXPECT_TRUE(hosts.MatchesURL(GURL("http://news.ycombinator.com")));
- EXPECT_TRUE(extension->GetActivePermissions()->HasEffectiveAccessToURL(
- GURL("http://news.ycombinator.com")));
+ EXPECT_TRUE(
+ extension->permissions_data()
+ ->active_permissions()
+ ->HasEffectiveAccessToURL(GURL("http://news.ycombinator.com")));
EXPECT_FALSE(extension->permissions_data()->HasEffectiveAccessToAllHosts());
extension = LoadManifest("effective_host_permissions", "all_hosts.json");
diff --git a/extensions/renderer/dispatcher.cc b/extensions/renderer/dispatcher.cc
index cfa6afd6..39d862d 100644
--- a/extensions/renderer/dispatcher.cc
+++ b/extensions/renderer/dispatcher.cc
@@ -735,7 +735,7 @@ void Dispatcher::OnUpdatePermissions(
scoped_refptr<const PermissionSet> delta = new PermissionSet(
apis, manifest_permissions, explicit_hosts, scriptable_hosts);
scoped_refptr<const PermissionSet> old_active =
- extension->GetActivePermissions();
+ extension->permissions_data()->active_permissions();
UpdatedExtensionPermissionsInfo::Reason reason =
static_cast<UpdatedExtensionPermissionsInfo::Reason>(reason_id);