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

Unified Diff: components/metrics/metrics_service.h

Issue 922383003: Enable UMA log uploads for cellular networks. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Callback to set connection type in the scheduler Created 5 years, 10 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: components/metrics/metrics_service.h
diff --git a/components/metrics/metrics_service.h b/components/metrics/metrics_service.h
index 904147454ed490eafc424edf046475a15db67d24..74e0b9512f5c597aeb55cee87992a21b07427c7a 100644
--- a/components/metrics/metrics_service.h
+++ b/components/metrics/metrics_service.h
@@ -27,6 +27,7 @@
#include "components/metrics/metrics_log.h"
#include "components/metrics/metrics_log_manager.h"
#include "components/metrics/metrics_provider.h"
+#include "components/metrics/net/network_metrics_provider.h"
#include "components/variations/active_field_trials.h"
class MetricsServiceAccessor;
@@ -242,6 +243,17 @@ class MetricsService : public base::HistogramFlattener {
// Clears the stability metrics that are saved in local state.
void ClearSavedStabilityMetrics();
+ // Sets the pointer for network_metrics_provider for passing it through to
+ // scheduler when it is initialized.
+ void SetNetworkMetricsProvider(
+ NetworkMetricsProvider* network_metrics_provider);
+
+ // Returns true if the connection type is 2G, 3G, or 4G.
+ bool IsCellularConnection();
+
+ // Passes the indicator of connection type to the scheduler.
+ void UpdateSchedulerConnectionType();
+
protected:
// Exposed for testing.
MetricsLogManager* log_manager() { return &log_manager_; }
@@ -481,6 +493,8 @@ class MetricsService : public base::HistogramFlattener {
// exited-cleanly bit in the prefs.
static ShutdownCleanliness clean_shutdown_status_;
+ const NetworkMetricsProvider* network_metrics_provider_;
+
FRIEND_TEST_ALL_PREFIXES(MetricsServiceTest, IsPluginProcess);
FRIEND_TEST_ALL_PREFIXES(MetricsServiceTest,
PermutedEntropyCacheClearedWhenLowEntropyReset);

Powered by Google App Engine
This is Rietveld 408576698