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

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

Issue 375973003: Componentize component_updater: Use Configurator to build query parameters. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix one gyp omission Created 6 years, 5 months 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_configurator.cc
diff --git a/chrome/browser/component_updater/component_updater_configurator.cc b/chrome/browser/component_updater/component_updater_configurator.cc
index f9027e782e6688df466dc6a509ee5071edbe054d..e78ef90b0597300ff29931264cec9347d7dce1bb 100644
--- a/chrome/browser/component_updater/component_updater_configurator.cc
+++ b/chrome/browser/component_updater/component_updater_configurator.cc
@@ -11,11 +11,19 @@
#include "base/command_line.h"
#include "base/compiler_specific.h"
#include "base/strings/string_util.h"
+#include "base/strings/stringprintf.h"
+#include "base/sys_info.h"
+#include "base/win/windows_version.h"
#include "build/build_config.h"
+#include "chrome/browser/omaha_query_params/chrome_omaha_query_params_delegate.h"
+#include "chrome/common/chrome_version_info.h"
#include "components/component_updater/component_updater_switches.h"
+#include "components/omaha_query_params/omaha_query_params.h"
#include "net/url_request/url_request_context_getter.h"
#include "url/gurl.h"
+using omaha_query_params::OmahaQueryParams;
+
namespace component_updater {
namespace {
@@ -101,7 +109,10 @@ class ChromeConfigurator : public Configurator {
virtual int OnDemandDelay() const OVERRIDE;
virtual GURL UpdateUrl() const OVERRIDE;
virtual GURL PingUrl() const OVERRIDE;
+ virtual base::Version ApplicationVersion() const OVERRIDE;
+ virtual std::string PlatformRequestParams() const OVERRIDE;
virtual std::string ExtraRequestParams() const OVERRIDE;
+ virtual std::string RequestOSTag() const OVERRIDE;
virtual size_t UrlSizeLimit() const OVERRIDE;
virtual net::URLRequestContextGetter* RequestContext() const OVERRIDE;
virtual bool InProcess() const OVERRIDE;
@@ -110,6 +121,7 @@ class ChromeConfigurator : public Configurator {
private:
net::URLRequestContextGetter* url_request_getter_;
+ std::string platform_request_params_;
std::string extra_info_;
std::string url_source_;
bool fast_update_;
@@ -147,6 +159,32 @@ ChromeConfigurator::ChromeConfigurator(
url_source_ = kDefaultUrlSource;
}
+ const std::string prod_id(
+ OmahaQueryParams::GetProdIdString(OmahaQueryParams::CHROME));
+ const chrome::VersionInfo chrome_version_info;
+ const std::string chrome_version(chrome_version_info.Version());
+ const std::string channel(ChromeOmahaQueryParamsDelegate::GetChannelString());
+ const std::string lang(ChromeOmahaQueryParamsDelegate::GetLang());
+ platform_request_params_ = base::StringPrintf(
+ "version=\"%s-%s\" prodversion=\"%s\" "
+ "lang=\"%s\" updaterchannel=\"%s\" prodchannel=\"%s\" "
+ "os=\"%s\" arch=\"%s\" nacl_arch=\"%s\"",
+ prod_id.c_str(),
+ chrome_version.c_str(), // "version"
+ chrome_version.c_str(), // "prodversion"
+ lang.c_str(), // "lang",
+ channel.c_str(), // "updaterchannel"
+ channel.c_str(), // "prodchannel"
+ OmahaQueryParams::GetOS(), // "os"
+ OmahaQueryParams::GetArch(), // "arch"
+ OmahaQueryParams::GetNaclArch()); // "nacl_arch"
+#if defined(OS_WIN)
+ if (base::win::OSInfo::GetInstance()->wow64_status() ==
+ base::win::OSInfo::WOW64_ENABLED) {
+ base::StringAppendF(&platform_request_params, " wow64=\"1\"");
+ }
+#endif
+
if (HasSwitchValue(switch_values, kSwitchRequestParam))
extra_info_ += "testrequest=\"1\"";
}
@@ -183,10 +221,26 @@ GURL ChromeConfigurator::PingUrl() const {
return pings_enabled_ ? GURL(kPingUrl) : GURL();
}
+base::Version ChromeConfigurator::ApplicationVersion() const {
+ return base::Version(chrome::VersionInfo().Version());
+}
+
+std::string ChromeConfigurator::PlatformRequestParams() const {
+ return platform_request_params_;
+}
+
std::string ChromeConfigurator::ExtraRequestParams() const {
return extra_info_;
}
+std::string ChromeConfigurator::RequestOSTag() const {
Sorin Jianu 2014/07/09 08:29:16 I'll say up front I don't know of a good design he
tommycli 2014/07/09 19:48:10 Done.
+ return base::StringPrintf(
+ "<os platform=\"%s\" version=\"%s\" arch=\"%s\"/>",
+ chrome::VersionInfo().OSType().c_str(), // "platform"
+ base::SysInfo().OperatingSystemVersion().c_str(), // "version"
+ base::SysInfo().OperatingSystemArchitecture().c_str()); // "arch"
+}
+
size_t ChromeConfigurator::UrlSizeLimit() const {
return 1024ul;
}

Powered by Google App Engine
This is Rietveld 408576698