summaryrefslogtreecommitdiffstats
path: root/chromecast/base
diff options
context:
space:
mode:
authorhguihot <hguihot@chromium.org>2014-12-02 09:59:47 -0800
committerCommit bot <commit-bot@chromium.org>2014-12-02 18:00:14 +0000
commitb6000ce288136388761c0e5ca9812cd4b4b9fed0 (patch)
tree6dee4bd6693e58bae7d9ea50d915e9e90d533561 /chromecast/base
parent583cbf87a497ffd8821eb63e25d40d83490b0ec5 (diff)
downloadchromium_src-b6000ce288136388761c0e5ca9812cd4b4b9fed0.zip
chromium_src-b6000ce288136388761c0e5ca9812cd4b4b9fed0.tar.gz
chromium_src-b6000ce288136388761c0e5ca9812cd4b4b9fed0.tar.bz2
Add OnAction in MetricsSink interface.
Review URL: https://codereview.chromium.org/761123004 Cr-Commit-Position: refs/heads/master@{#306414}
Diffstat (limited to 'chromecast/base')
-rw-r--r--chromecast/base/metrics/cast_metrics_helper.cc16
-rw-r--r--chromecast/base/metrics/cast_metrics_helper.h2
2 files changed, 14 insertions, 4 deletions
diff --git a/chromecast/base/metrics/cast_metrics_helper.cc b/chromecast/base/metrics/cast_metrics_helper.cc
index e492355..b51439f 100644
--- a/chromecast/base/metrics/cast_metrics_helper.cc
+++ b/chromecast/base/metrics/cast_metrics_helper.cc
@@ -70,13 +70,11 @@ void CastMetricsHelper::TagAppStart(const std::string& arg_app_name) {
}
void CastMetricsHelper::LogMediaPlay() {
- MAKE_SURE_THREAD(LogMediaPlay);
- base::RecordComputedAction(GetMetricsNameWithAppName("MediaPlay", ""));
+ LogAction(GetMetricsNameWithAppName("MediaPlay", ""));
}
void CastMetricsHelper::LogMediaPause() {
- MAKE_SURE_THREAD(LogMediaPause);
- base::RecordComputedAction(GetMetricsNameWithAppName("MediaPause", ""));
+ LogAction(GetMetricsNameWithAppName("MediaPause", ""));
}
void CastMetricsHelper::LogTimeToDisplayVideo() {
@@ -192,6 +190,16 @@ void CastMetricsHelper::SetMetricsSink(MetricsSink* delegate) {
metrics_sink_ = delegate;
}
+void CastMetricsHelper::LogAction(const std::string& action) {
+ MAKE_SURE_THREAD(LogAction, action);
+
+ if (metrics_sink_) {
+ metrics_sink_->OnAction(action);
+ } else {
+ base::RecordComputedAction(action);
+ }
+}
+
void CastMetricsHelper::LogEnumerationHistogramEvent(
const std::string& name, int value, int num_buckets) {
MAKE_SURE_THREAD(LogEnumerationHistogramEvent, name, value, num_buckets);
diff --git a/chromecast/base/metrics/cast_metrics_helper.h b/chromecast/base/metrics/cast_metrics_helper.h
index 4f06a46..22384d5 100644
--- a/chromecast/base/metrics/cast_metrics_helper.h
+++ b/chromecast/base/metrics/cast_metrics_helper.h
@@ -32,6 +32,7 @@ class CastMetricsHelper {
public:
virtual ~MetricsSink() {}
+ virtual void OnAction(const std::string& action) = 0;
virtual void OnEnumerationEvent(const std::string& name,
int value, int num_buckets) = 0;
virtual void OnTimeEvent(const std::string& name,
@@ -88,6 +89,7 @@ class CastMetricsHelper {
CastMetricsHelper();
private:
+ void LogAction(const std::string& action);
void LogEnumerationHistogramEvent(const std::string& name,
int value, int num_buckets);
void LogTimeHistogramEvent(const std::string& name,