summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions
diff options
context:
space:
mode:
authorrsleevi@chromium.org <rsleevi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-27 07:56:43 +0000
committerrsleevi@chromium.org <rsleevi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-27 07:56:43 +0000
commit22991bed3fe4146efc22ae368f3637edd3f8182e (patch)
treef5592aea6db444845a933b711c41ff56c787d693 /chrome/common/extensions
parenta47a6fe323a07681d3a0715660b1a9c6515ec9c9 (diff)
downloadchromium_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.json42
-rw-r--r--chrome/common/extensions/extension.cc62
-rw-r--r--chrome/common/extensions/extension.h4
-rw-r--r--chrome/common/extensions/extension_constants.cc1
-rw-r--r--chrome/common/extensions/extension_constants.h3
-rw-r--r--chrome/common/extensions/extension_permission_set.cc4
-rw-r--r--chrome/common/extensions/extension_permission_set.h1
-rw-r--r--chrome/common/extensions/extension_permission_set_unittest.cc9
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);