Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1752)

Unified Diff: chrome/browser/component_updater/component_updater_ping_manager.cc

Issue 74893002: Changed the update protocol for component updater from v2 to v3. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed feedback from cdn@ Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/component_updater/component_updater_ping_manager.cc
diff --git a/chrome/browser/component_updater/component_updater_ping_manager.cc b/chrome/browser/component_updater/component_updater_ping_manager.cc
index d11f4f348510d4546006611266df996cd2eef7ce..a5c5a14608e4637e41f4e61b16b64a2ecd901f16 100644
--- a/chrome/browser/component_updater/component_updater_ping_manager.cc
+++ b/chrome/browser/component_updater/component_updater_ping_manager.cc
@@ -5,18 +5,13 @@
#include "chrome/browser/component_updater/component_updater_ping_manager.h"
#include "base/guid.h"
#include "base/logging.h"
+#include "base/memory/scoped_ptr.h"
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
-#include "base/sys_info.h"
-#include "base/win/windows_version.h"
+#include "chrome/browser/component_updater/component_updater_utils.h"
#include "chrome/browser/component_updater/crx_update_item.h"
-#include "chrome/common/chrome_version_info.h"
-#include "chrome/common/omaha_query_params/omaha_query_params.h"
-#include "net/base/load_flags.h"
-#include "net/base/net_errors.h"
#include "net/url_request/url_fetcher.h"
#include "net/url_request/url_fetcher_delegate.h"
-#include "net/url_request/url_request_status.h"
namespace {
@@ -69,45 +64,26 @@ void PingSender::SendPing(
if (!ping_url.is_valid())
return;
- url_fetcher_.reset(net::URLFetcher::Create(0,
- ping_url,
- net::URLFetcher::POST,
- this));
-
- url_fetcher_->SetUploadData("application/xml", BuildPing(item));
- url_fetcher_->SetRequestContext(url_request_context_getter);
- url_fetcher_->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES |
- net::LOAD_DO_NOT_SAVE_COOKIES |
- net::LOAD_DISABLE_CACHE);
- url_fetcher_->SetAutomaticallyRetryOn5xx(false);
- url_fetcher_->Start();
+ url_fetcher_.reset(SendProtocolRequest(ping_url,
+ BuildPing(item),
+ this,
+ url_request_context_getter));
}
// Builds a ping message for the specified update item.
std::string PingSender::BuildPing(const CrxUpdateItem* item) {
- const std::string prod_id(chrome::OmahaQueryParams::GetProdIdString(
- chrome::OmahaQueryParams::CHROME));
-
- const char request_format[] =
- "<o:gupdate xmlns:o=\"http://www.google.com/update2/request\" "
- "protocol=\"2.0\" version=\"%s-%s\" requestid=\"{%s}\" "
- "updaterchannel=\"%s\"> "
- "<o:os platform=\"%s\" version=\"%s\"/> "
- "<o:app appid=\"%s\" version=\"%s\">"
+ const char app_element_format[] =
+ "<app appid=\"%s\" version=\"%s\" nextversion=\"%s\">"
"%s"
- "</o:app></o:gupdate>";
- const std::string request(
- base::StringPrintf(request_format,
- prod_id.c_str(),
- chrome::VersionInfo().Version().c_str(),
- base::GenerateGUID().c_str(),
- chrome::OmahaQueryParams::GetChannelString(),
- chrome::VersionInfo().OSType().c_str(),
- base::SysInfo().OperatingSystemVersion().c_str(),
- item->id.c_str(),
- item->component.version.GetString().c_str(),
- BuildPingEventElement(item).c_str()));
- return request;
+ "</app>";
+ const std::string app_element(base::StringPrintf(
+ app_element_format,
+ item->id.c_str(), // "appid"
+ item->previous_version.GetString().c_str(), // "version"
+ item->next_version.GetString().c_str(), // "nextversion"
+ BuildPingEventElement(item).c_str()));
+
+ return BuildProtocolRequest(app_element);
}
// Returns a string representing one ping event xml element for an update item.
@@ -117,13 +93,9 @@ std::string PingSender::BuildPingEventElement(const CrxUpdateItem* item) {
using base::StringAppendF;
- std::string ping_event("<o:event eventtype=\"3\"");
+ std::string ping_event("<event eventtype=\"3\"");
const int event_result = item->status == CrxUpdateItem::kUpdated;
StringAppendF(&ping_event, " eventresult=\"%d\"", event_result);
- StringAppendF(&ping_event, " previousversion=\"%s\"",
- item->previous_version.GetString().c_str());
- StringAppendF(&ping_event, " nextversion=\"%s\"",
- item->next_version.GetString().c_str());
if (item->error_category)
StringAppendF(&ping_event, " errorcat=\"%d\"", item->error_category);
if (item->error_code)

Powered by Google App Engine
This is Rietveld 408576698