diff options
author | rsleevi@chromium.org <rsleevi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-27 07:56:43 +0000 |
---|---|---|
committer | rsleevi@chromium.org <rsleevi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-27 07:56:43 +0000 |
commit | 22991bed3fe4146efc22ae368f3637edd3f8182e (patch) | |
tree | f5592aea6db444845a933b711c41ff56c787d693 /chrome/common/extensions | |
parent | a47a6fe323a07681d3a0715660b1a9c6515ec9c9 (diff) | |
download | chromium_src-22991bed3fe4146efc22ae368f3637edd3f8182e.zip chromium_src-22991bed3fe4146efc22ae368f3637edd3f8182e.tar.gz chromium_src-22991bed3fe4146efc22ae368f3637edd3f8182e.tar.bz2 |
Revert 90496 - Probable cause of InstantTest.On[Change/Submit/Cancel]Event failures.
Added a private chromeAuthPrivate API.
Ceated a component hosted app that uses this to set cloud print credentials.
BUG=None
TEST=Unit-tests
Review URL: http://codereview.chromium.org/7253001
TBR=sanjeevr@chromium.org
Review URL: http://codereview.chromium.org/7264016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90547 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions')
-rw-r--r-- | chrome/common/extensions/api/extension_api.json | 42 | ||||
-rw-r--r-- | chrome/common/extensions/extension.cc | 62 | ||||
-rw-r--r-- | chrome/common/extensions/extension.h | 4 | ||||
-rw-r--r-- | chrome/common/extensions/extension_constants.cc | 1 | ||||
-rw-r--r-- | chrome/common/extensions/extension_constants.h | 3 | ||||
-rw-r--r-- | chrome/common/extensions/extension_permission_set.cc | 4 | ||||
-rw-r--r-- | chrome/common/extensions/extension_permission_set.h | 1 | ||||
-rw-r--r-- | chrome/common/extensions/extension_permission_set_unittest.cc | 9 |
8 files changed, 24 insertions, 102 deletions
diff --git a/chrome/common/extensions/api/extension_api.json b/chrome/common/extensions/api/extension_api.json index 929d0eb..d507be1 100644 --- a/chrome/common/extensions/api/extension_api.json +++ b/chrome/common/extensions/api/extension_api.json @@ -6170,47 +6170,5 @@ ] } ] - }, - { - "namespace": "chromeAuthPrivate", - "nodoc": "true", - "functions": [ - { - "name": "setCloudPrintCredentials", - "description": "Sets the login credentials for Cloud Print.", - "type": "function", - "parameters": [ - { - "name": "userEmail", - "type": "string", - "description": "The email address of the user." - }, - { - "name": "robotEmail", - "type": "string", - "description": "The email address of the robot account." - }, - { - "name": "credentials", - "type": "string", - "description": "The login credentials(OAuth2 Auth code)." - }, - { - "name": "callback", - "type": "function", - "description": "Called when a failure happens. Called upon success only in tests.", - "optional": "true", - "parameters": [ - { - "name": "result", - "type": "string", - "description": "A string result code. The value is non-empty on success only in tests.", - "optional": "true" - } - ] - } - ] - } - ] } ] diff --git a/chrome/common/extensions/extension.cc b/chrome/common/extensions/extension.cc index 7ce536c..e98c5f0 100644 --- a/chrome/common/extensions/extension.cc +++ b/chrome/common/extensions/extension.cc @@ -274,29 +274,6 @@ ExtensionPermissionMessages Extension::GetPermissionMessages() const { return permission_set_->GetPermissionMessages(); } -void Extension::OverrideLaunchUrl(const GURL& override_url) { - GURL new_url(override_url); - if (!new_url.is_valid()) { - LOG(WARNING) << "Invalid override url given for " << name(); - } else { - if (new_url.has_port()) { - LOG(WARNING) << "Override URL passed for " << name() - << " should not contain a port. Removing it."; - - GURL::Replacements remove_port; - remove_port.ClearPort(); - new_url = new_url.ReplaceComponents(remove_port); - } - - launch_web_url_ = new_url.spec(); - - URLPattern pattern(kValidWebExtentSchemes); - pattern.Parse(new_url.spec(), URLPattern::PARSE_STRICT); - pattern.SetPath(pattern.path() + '*'); - extent_.AddPattern(pattern); - } -} - std::vector<string16> Extension::GetPermissionMessageStrings() const { return permission_set_->GetWarningMessages(); } @@ -1042,26 +1019,29 @@ bool Extension::LoadLaunchURL(const DictionaryValue* manifest, // Empty string means option was not used. if (!gallery_url_str.empty()) { GURL gallery_url(gallery_url_str); - OverrideLaunchUrl(gallery_url); - } - } else if (id() == extension_misc::kCloudPrintAppId) { - // In order for the --cloud-print-service switch to work, we must update - // the launch URL and web extent. - // TODO(sanjeevr): Ideally we want to use CloudPrintURL here but that is - // currently under chrome/browser. - const CommandLine& command_line = *CommandLine::ForCurrentProcess(); - GURL cloud_print_service_url = GURL(command_line.GetSwitchValueASCII( - switches::kCloudPrintServiceURL)); - if (!cloud_print_service_url.is_empty()) { - std::string path( - cloud_print_service_url.path() + "/enable_chrome_connector"); - GURL::Replacements replacements; - replacements.SetPathStr(path); - GURL cloud_print_enable_connector_url = - cloud_print_service_url.ReplaceComponents(replacements); - OverrideLaunchUrl(cloud_print_enable_connector_url); + if (!gallery_url.is_valid()) { + LOG(WARNING) << "Invalid url given in switch " + << switches::kAppsGalleryURL; + } else { + if (gallery_url.has_port()) { + LOG(WARNING) << "URLs passed to switch " << switches::kAppsGalleryURL + << " should not contain a port. Removing it."; + + GURL::Replacements remove_port; + remove_port.ClearPort(); + gallery_url = gallery_url.ReplaceComponents(remove_port); + } + + launch_web_url_ = gallery_url.spec(); + + URLPattern pattern(kValidWebExtentSchemes); + pattern.Parse(gallery_url.spec(), URLPattern::PARSE_STRICT); + pattern.SetPath(pattern.path() + '*'); + extent_.AddPattern(pattern); + } } } + return true; } diff --git a/chrome/common/extensions/extension.h b/chrome/common/extensions/extension.h index 4bfd709..7e584d7 100644 --- a/chrome/common/extensions/extension.h +++ b/chrome/common/extensions/extension.h @@ -620,10 +620,6 @@ class Extension : public base::RefCountedThreadSafe<Extension> { // component-private permission. bool IsComponentOnlyPermission(const ExtensionAPIPermission* api) const; - // Updates the launch URL and extents for the extension using the given - // |override_url|. - void OverrideLaunchUrl(const GURL& override_url); - // Cached images for this extension. This should only be touched on the UI // thread. mutable ImageCache image_cache_; diff --git a/chrome/common/extensions/extension_constants.cc b/chrome/common/extensions/extension_constants.cc index 0ab3293..4761639 100644 --- a/chrome/common/extensions/extension_constants.cc +++ b/chrome/common/extensions/extension_constants.cc @@ -407,7 +407,6 @@ const char* kDecodedMessageCatalogsFilename = "DECODED_MESSAGE_CATALOGS"; namespace extension_misc { const char* kBookmarkManagerId = "eemcgdkfndhakfknompkggombfjjjeno"; const char* kWebStoreAppId = "ahfgeienlihckogmohjhadlkjgocpleb"; -const char* kCloudPrintAppId = "mfehgcgbbipciphmccgaenjidiccnmng"; const char* kAppsPromoHistogram = "Extensions.AppsPromo"; const char* kAppLaunchHistogram = "Extensions.AppLaunch"; #if defined(OS_CHROMEOS) diff --git a/chrome/common/extensions/extension_constants.h b/chrome/common/extensions/extension_constants.h index 4b0e651..1fdd433 100644 --- a/chrome/common/extensions/extension_constants.h +++ b/chrome/common/extensions/extension_constants.h @@ -286,9 +286,6 @@ namespace extension_misc { // The extension id of the Web Store component application. extern const char* kWebStoreAppId; - // The extension id of the Cloud Print component application. - extern const char* kCloudPrintAppId; - // Note: this structure is an ASN.1 which encodes the algorithm used // with its parameters. This is defined in PKCS #1 v2.1 (RFC 3447). // It is encoding: { OID sha1WithRSAEncryption PARAMETERS NULL } diff --git a/chrome/common/extensions/extension_permission_set.cc b/chrome/common/extensions/extension_permission_set.cc index c829c10..d87e9e3 100644 --- a/chrome/common/extensions/extension_permission_set.cc +++ b/chrome/common/extensions/extension_permission_set.cc @@ -249,10 +249,6 @@ ExtensionPermissionsInfo::ExtensionPermissionsInfo() // Hosted app and private permissions. RegisterPermission( - ExtensionAPIPermission::kChromeAuthPrivate, "chromeAuthPrivate", 0, - ExtensionPermissionMessage::kNone, - true, true, false, false); - RegisterPermission( ExtensionAPIPermission::kWebstorePrivate, "webstorePrivate", 0, ExtensionPermissionMessage::kNone, true, true, false, false); diff --git a/chrome/common/extensions/extension_permission_set.h b/chrome/common/extensions/extension_permission_set.h index 8d6a8a0..14f58a90 100644 --- a/chrome/common/extensions/extension_permission_set.h +++ b/chrome/common/extensions/extension_permission_set.h @@ -99,7 +99,6 @@ class ExtensionAPIPermission { kContentSettings, kContextMenus, kCookie, - kChromeAuthPrivate, kChromePrivate, kChromeosInfoPrivate, kDebugger, diff --git a/chrome/common/extensions/extension_permission_set_unittest.cc b/chrome/common/extensions/extension_permission_set_unittest.cc index 75e12fa..9cfa698 100644 --- a/chrome/common/extensions/extension_permission_set_unittest.cc +++ b/chrome/common/extensions/extension_permission_set_unittest.cc @@ -162,7 +162,6 @@ TEST(ExtensionAPIPermissionTest, HostedAppPermissions) { hosted_perms.insert(ExtensionAPIPermission::kBackground); hosted_perms.insert(ExtensionAPIPermission::kClipboardRead); hosted_perms.insert(ExtensionAPIPermission::kClipboardWrite); - hosted_perms.insert(ExtensionAPIPermission::kChromeAuthPrivate); hosted_perms.insert(ExtensionAPIPermission::kChromePrivate); hosted_perms.insert(ExtensionAPIPermission::kExperimental); hosted_perms.insert(ExtensionAPIPermission::kGeolocation); @@ -178,14 +177,13 @@ TEST(ExtensionAPIPermissionTest, HostedAppPermissions) { EXPECT_EQ(hosted_perms.count(*i) > 0, info->GetByID(*i)->is_hosted_app()); } - EXPECT_EQ(10u, count); - EXPECT_EQ(10u, info->get_hosted_app_permission_count()); + EXPECT_EQ(9u, count); + EXPECT_EQ(9u, info->get_hosted_app_permission_count()); } TEST(ExtensionAPIPermissionTest, ComponentOnlyPermissions) { ExtensionPermissionsInfo* info = ExtensionPermissionsInfo::GetInstance(); ExtensionAPIPermissionSet private_perms; - private_perms.insert(ExtensionAPIPermission::kChromeAuthPrivate); private_perms.insert(ExtensionAPIPermission::kChromeosInfoPrivate); private_perms.insert(ExtensionAPIPermission::kFileBrowserPrivate); private_perms.insert(ExtensionAPIPermission::kMediaPlayerPrivate); @@ -200,7 +198,7 @@ TEST(ExtensionAPIPermissionTest, ComponentOnlyPermissions) { info->GetByID(*i)->is_component_only()); } - EXPECT_EQ(5, count); + EXPECT_EQ(4, count); } TEST(ExtensionPermissionSetTest, EffectiveHostPermissions) { @@ -499,7 +497,6 @@ TEST(ExtensionPermissionSetTest, PermissionMessages) { skip.insert(ExtensionAPIPermission::kWebstorePrivate); skip.insert(ExtensionAPIPermission::kFileBrowserPrivate); skip.insert(ExtensionAPIPermission::kMediaPlayerPrivate); - skip.insert(ExtensionAPIPermission::kChromeAuthPrivate); skip.insert(ExtensionAPIPermission::kChromePrivate); skip.insert(ExtensionAPIPermission::kChromeosInfoPrivate); skip.insert(ExtensionAPIPermission::kWebSocketProxyPrivate); |