Commit 567a16f2 authored by holte's avatar holte Committed by Commit bot

Add server_url and mime_type params to CreateUploader.

This will allow for reuse by Rappor/UKM.

BUG=678682

Review-Url: https://codereview.chromium.org/2614533002
Cr-Commit-Position: refs/heads/master@{#441809}
parent 2f4dfeb1
...@@ -201,11 +201,12 @@ void AwMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -201,11 +201,12 @@ void AwMetricsServiceClient::CollectFinalMetricsForLog(
std::unique_ptr<metrics::MetricsLogUploader> std::unique_ptr<metrics::MetricsLogUploader>
AwMetricsServiceClient::CreateUploader( AwMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) { const base::Callback<void(int)>& on_upload_complete) {
return std::unique_ptr<::metrics::MetricsLogUploader>( return std::unique_ptr<::metrics::MetricsLogUploader>(
new metrics::NetMetricsLogUploader( new metrics::NetMetricsLogUploader(
request_context_, metrics::kDefaultMetricsServerUrl, request_context_, server_url, mime_type, on_upload_complete));
metrics::kDefaultMetricsMimeType, on_upload_complete));
} }
base::TimeDelta AwMetricsServiceClient::GetStandardUploadInterval() { base::TimeDelta AwMetricsServiceClient::GetStandardUploadInterval() {
......
...@@ -66,6 +66,8 @@ class AwMetricsServiceClient : public metrics::MetricsServiceClient, ...@@ -66,6 +66,8 @@ class AwMetricsServiceClient : public metrics::MetricsServiceClient,
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::unique_ptr<metrics::MetricsLogUploader> CreateUploader( std::unique_ptr<metrics::MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
......
...@@ -139,11 +139,13 @@ void BlimpMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -139,11 +139,13 @@ void BlimpMetricsServiceClient::CollectFinalMetricsForLog(
std::unique_ptr<metrics::MetricsLogUploader> std::unique_ptr<metrics::MetricsLogUploader>
BlimpMetricsServiceClient::CreateUploader( BlimpMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) { const base::Callback<void(int)>& on_upload_complete) {
return base::WrapUnique<metrics::MetricsLogUploader>( return base::WrapUnique<metrics::MetricsLogUploader>(
new metrics::NetMetricsLogUploader( new metrics::NetMetricsLogUploader(
request_context_getter_.get(), metrics::kDefaultMetricsServerUrl, request_context_getter_.get(), server_url,
metrics::kDefaultMetricsMimeType, on_upload_complete)); mime_type, on_upload_complete));
} }
base::TimeDelta BlimpMetricsServiceClient::GetStandardUploadInterval() { base::TimeDelta BlimpMetricsServiceClient::GetStandardUploadInterval() {
......
...@@ -57,6 +57,8 @@ class BlimpMetricsServiceClient : public metrics::MetricsServiceClient, ...@@ -57,6 +57,8 @@ class BlimpMetricsServiceClient : public metrics::MetricsServiceClient,
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::unique_ptr<metrics::MetricsLogUploader> CreateUploader( std::unique_ptr<metrics::MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
metrics::EnableMetricsDefault GetMetricsReportingDefaultState() override; metrics::EnableMetricsDefault GetMetricsReportingDefaultState() override;
......
...@@ -506,12 +506,13 @@ void ChromeMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -506,12 +506,13 @@ void ChromeMetricsServiceClient::CollectFinalMetricsForLog(
std::unique_ptr<metrics::MetricsLogUploader> std::unique_ptr<metrics::MetricsLogUploader>
ChromeMetricsServiceClient::CreateUploader( ChromeMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) { const base::Callback<void(int)>& on_upload_complete) {
return std::unique_ptr<metrics::MetricsLogUploader>( return std::unique_ptr<metrics::MetricsLogUploader>(
new metrics::NetMetricsLogUploader( new metrics::NetMetricsLogUploader(
g_browser_process->system_request_context(), g_browser_process->system_request_context(),
metrics::kDefaultMetricsServerUrl, metrics::kDefaultMetricsMimeType, server_url, mime_type, on_upload_complete));
on_upload_complete));
} }
base::TimeDelta ChromeMetricsServiceClient::GetStandardUploadInterval() { base::TimeDelta ChromeMetricsServiceClient::GetStandardUploadInterval() {
......
...@@ -74,6 +74,8 @@ class ChromeMetricsServiceClient ...@@ -74,6 +74,8 @@ class ChromeMetricsServiceClient
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::unique_ptr<metrics::MetricsLogUploader> CreateUploader( std::unique_ptr<metrics::MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
base::string16 GetRegistryBackupKey() override; base::string16 GetRegistryBackupKey() override;
......
...@@ -232,9 +232,7 @@ void CastMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -232,9 +232,7 @@ void CastMetricsServiceClient::CollectFinalMetricsForLog(
done_callback.Run(); done_callback.Run();
} }
std::unique_ptr<::metrics::MetricsLogUploader> std::string CastMetricsServiceClient::GetMetricsServerUrl() {
CastMetricsServiceClient::CreateUploader(
const base::Callback<void(int)>& on_upload_complete) {
std::string uma_server_url(::metrics::kDefaultMetricsServerUrl); std::string uma_server_url(::metrics::kDefaultMetricsServerUrl);
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
if (command_line->HasSwitch(switches::kOverrideMetricsUploadUrl)) { if (command_line->HasSwitch(switches::kOverrideMetricsUploadUrl)) {
...@@ -242,10 +240,17 @@ CastMetricsServiceClient::CreateUploader( ...@@ -242,10 +240,17 @@ CastMetricsServiceClient::CreateUploader(
command_line->GetSwitchValueASCII(switches::kOverrideMetricsUploadUrl)); command_line->GetSwitchValueASCII(switches::kOverrideMetricsUploadUrl));
} }
DCHECK(!uma_server_url.empty()); DCHECK(!uma_server_url.empty());
return uma_server_url;
}
std::unique_ptr<::metrics::MetricsLogUploader>
CastMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) {
return std::unique_ptr<::metrics::MetricsLogUploader>( return std::unique_ptr<::metrics::MetricsLogUploader>(
new ::metrics::NetMetricsLogUploader(request_context_, uma_server_url, new ::metrics::NetMetricsLogUploader(request_context_, server_url,
::metrics::kDefaultMetricsMimeType, mime_type, on_upload_complete));
on_upload_complete));
} }
base::TimeDelta CastMetricsServiceClient::GetStandardUploadInterval() { base::TimeDelta CastMetricsServiceClient::GetStandardUploadInterval() {
......
...@@ -78,7 +78,10 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient, ...@@ -78,7 +78,10 @@ class CastMetricsServiceClient : public ::metrics::MetricsServiceClient,
void InitializeSystemProfileMetrics( void InitializeSystemProfileMetrics(
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::string GetMetricsServerUrl() override;
std::unique_ptr<::metrics::MetricsLogUploader> CreateUploader( std::unique_ptr<::metrics::MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
......
...@@ -159,6 +159,7 @@ ...@@ -159,6 +159,7 @@
#include "components/metrics/metrics_reporting_scheduler.h" #include "components/metrics/metrics_reporting_scheduler.h"
#include "components/metrics/metrics_service_client.h" #include "components/metrics/metrics_service_client.h"
#include "components/metrics/metrics_state_manager.h" #include "components/metrics/metrics_state_manager.h"
#include "components/metrics/url_constants.h"
#include "components/prefs/pref_registry_simple.h" #include "components/prefs/pref_registry_simple.h"
#include "components/prefs/pref_service.h" #include "components/prefs/pref_service.h"
#include "components/variations/entropy_provider.h" #include "components/variations/entropy_provider.h"
...@@ -1009,6 +1010,8 @@ void MetricsService::SendStagedLog() { ...@@ -1009,6 +1010,8 @@ void MetricsService::SendStagedLog() {
if (!log_uploader_) { if (!log_uploader_) {
log_uploader_ = client_->CreateUploader( log_uploader_ = client_->CreateUploader(
client_->GetMetricsServerUrl(),
metrics::kDefaultMetricsMimeType,
base::Bind(&MetricsService::OnLogUploadComplete, base::Bind(&MetricsService::OnLogUploadComplete,
self_ptr_factory_.GetWeakPtr())); self_ptr_factory_.GetWeakPtr()));
} }
......
...@@ -4,6 +4,8 @@ ...@@ -4,6 +4,8 @@
#include "components/metrics/metrics_service_client.h" #include "components/metrics/metrics_service_client.h"
#include "components/metrics/url_constants.h"
namespace metrics { namespace metrics {
base::string16 MetricsServiceClient::GetRegistryBackupKey() { base::string16 MetricsServiceClient::GetRegistryBackupKey() {
...@@ -22,4 +24,8 @@ bool MetricsServiceClient::IsUMACellularUploadLogicEnabled() { ...@@ -22,4 +24,8 @@ bool MetricsServiceClient::IsUMACellularUploadLogicEnabled() {
return false; return false;
} }
std::string MetricsServiceClient::GetMetricsServerUrl() {
return metrics::kDefaultMetricsServerUrl;
}
} // namespace metrics } // namespace metrics
...@@ -82,9 +82,14 @@ class MetricsServiceClient { ...@@ -82,9 +82,14 @@ class MetricsServiceClient {
virtual void CollectFinalMetricsForLog( virtual void CollectFinalMetricsForLog(
const base::Closure& done_callback) = 0; const base::Closure& done_callback) = 0;
// Get the URL of the metrics server.
virtual std::string GetMetricsServerUrl();
// Creates a MetricsLogUploader with the specified parameters (see comments on // Creates a MetricsLogUploader with the specified parameters (see comments on
// MetricsLogUploader for details). // MetricsLogUploader for details).
virtual std::unique_ptr<MetricsLogUploader> CreateUploader( virtual std::unique_ptr<MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) = 0; const base::Callback<void(int)>& on_upload_complete) = 0;
// Returns the standard interval between upload attempts. // Returns the standard interval between upload attempts.
......
...@@ -66,6 +66,8 @@ void TestMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -66,6 +66,8 @@ void TestMetricsServiceClient::CollectFinalMetricsForLog(
} }
std::unique_ptr<MetricsLogUploader> TestMetricsServiceClient::CreateUploader( std::unique_ptr<MetricsLogUploader> TestMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) { const base::Callback<void(int)>& on_upload_complete) {
return std::unique_ptr<MetricsLogUploader>(); return std::unique_ptr<MetricsLogUploader>();
} }
......
...@@ -36,6 +36,8 @@ class TestMetricsServiceClient : public MetricsServiceClient { ...@@ -36,6 +36,8 @@ class TestMetricsServiceClient : public MetricsServiceClient {
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::unique_ptr<MetricsLogUploader> CreateUploader( std::unique_ptr<MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
bool IsReportingPolicyManaged() override; bool IsReportingPolicyManaged() override;
......
...@@ -58,6 +58,8 @@ class IOSChromeMetricsServiceClient ...@@ -58,6 +58,8 @@ class IOSChromeMetricsServiceClient
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::unique_ptr<metrics::MetricsLogUploader> CreateUploader( std::unique_ptr<metrics::MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
base::string16 GetRegistryBackupKey() override; base::string16 GetRegistryBackupKey() override;
......
...@@ -151,11 +151,12 @@ void IOSChromeMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -151,11 +151,12 @@ void IOSChromeMetricsServiceClient::CollectFinalMetricsForLog(
std::unique_ptr<metrics::MetricsLogUploader> std::unique_ptr<metrics::MetricsLogUploader>
IOSChromeMetricsServiceClient::CreateUploader( IOSChromeMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) { const base::Callback<void(int)>& on_upload_complete) {
return base::MakeUnique<metrics::NetMetricsLogUploader>( return base::MakeUnique<metrics::NetMetricsLogUploader>(
GetApplicationContext()->GetSystemURLRequestContext(), GetApplicationContext()->GetSystemURLRequestContext(),
metrics::kDefaultMetricsServerUrl, metrics::kDefaultMetricsMimeType, server_url, mime_type, on_upload_complete);
on_upload_complete);
} }
base::TimeDelta IOSChromeMetricsServiceClient::GetStandardUploadInterval() { base::TimeDelta IOSChromeMetricsServiceClient::GetStandardUploadInterval() {
......
...@@ -67,6 +67,8 @@ class TodayMetricsServiceClient : public metrics::MetricsServiceClient { ...@@ -67,6 +67,8 @@ class TodayMetricsServiceClient : public metrics::MetricsServiceClient {
const base::Closure& done_callback) override; const base::Closure& done_callback) override;
void CollectFinalMetricsForLog(const base::Closure& done_callback) override; void CollectFinalMetricsForLog(const base::Closure& done_callback) override;
std::unique_ptr<metrics::MetricsLogUploader> CreateUploader( std::unique_ptr<metrics::MetricsLogUploader> CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) override; const base::Callback<void(int)>& on_upload_complete) override;
base::TimeDelta GetStandardUploadInterval() override; base::TimeDelta GetStandardUploadInterval() override;
...@@ -149,6 +151,8 @@ void TodayMetricsServiceClient::CollectFinalMetricsForLog( ...@@ -149,6 +151,8 @@ void TodayMetricsServiceClient::CollectFinalMetricsForLog(
std::unique_ptr<metrics::MetricsLogUploader> std::unique_ptr<metrics::MetricsLogUploader>
TodayMetricsServiceClient::CreateUploader( TodayMetricsServiceClient::CreateUploader(
const std::string& server_url,
const std::string& mime_type,
const base::Callback<void(int)>& on_upload_complete) { const base::Callback<void(int)>& on_upload_complete) {
NOTREACHED(); NOTREACHED();
return nullptr; return nullptr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment