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

Side by Side Diff: components/security_interstitials/core/metrics_helper.h

Issue 1365733005: Split captive portal metrics out of SSLErrorClassification (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Compiler error fix possibly for realsies Created 5 years, 2 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 unified diff | Download patch
« no previous file with comments | « chrome/chrome_browser.gypi ('k') | components/security_interstitials/core/metrics_helper.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_SECURITY_INTERSTITIALS_CORE_METRICS_HELPER_H_ 5 #ifndef COMPONENTS_SECURITY_INTERSTITIALS_CORE_METRICS_HELPER_H_
6 #define COMPONENTS_SECURITY_INTERSTITIALS_CORE_METRICS_HELPER_H_ 6 #define COMPONENTS_SECURITY_INTERSTITIALS_CORE_METRICS_HELPER_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/task/cancelable_task_tracker.h" 10 #include "base/task/cancelable_task_tracker.h"
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 MetricsHelper(const GURL& url, 84 MetricsHelper(const GURL& url,
85 const ReportDetails settings, 85 const ReportDetails settings,
86 history::HistoryService* history_service, 86 history::HistoryService* history_service,
87 rappor::RapporService* rappor_service); 87 rappor::RapporService* rappor_service);
88 virtual ~MetricsHelper() {} 88 virtual ~MetricsHelper() {}
89 89
90 // Records a user decision or interaction to the appropriate UMA metrics 90 // Records a user decision or interaction to the appropriate UMA metrics
91 // histogram and potentially in a RAPPOR metric. 91 // histogram and potentially in a RAPPOR metric.
92 void RecordUserDecision(Decision decision); 92 void RecordUserDecision(Decision decision);
93 void RecordUserInteraction(Interaction interaction); 93 void RecordUserInteraction(Interaction interaction);
94 void RecordShutdownMetrics();
95
94 // Number of times user visited this origin before. -1 means not-yet-set. 96 // Number of times user visited this origin before. -1 means not-yet-set.
95 int NumVisits(); 97 int NumVisits();
96 98
97 protected: 99 protected:
98 // Subclasses should implement any embedder-specific recording logic in these 100 // Subclasses should implement any embedder-specific recording logic in these
99 // methods. They'll be invoked from RecordUserDecision/Interaction. 101 // methods. They'll be invoked from the matching Record methods.
100 virtual void RecordExtraUserDecisionMetrics(Decision decision) = 0; 102 virtual void RecordExtraUserDecisionMetrics(Decision decision) = 0;
101 virtual void RecordExtraUserInteractionMetrics(Interaction interaction) = 0; 103 virtual void RecordExtraUserInteractionMetrics(Interaction interaction) = 0;
104 virtual void RecordExtraShutdownMetrics() = 0;
102 105
103 private: 106 private:
104 // Used to query the HistoryService to see if the URL is in history. It will 107 // Used to query the HistoryService to see if the URL is in history. It will
105 // only be invoked if the constructor received |history_service|. 108 // only be invoked if the constructor received |history_service|.
106 void OnGotHistoryCount(bool success, int num_visits, base::Time first_visit); 109 void OnGotHistoryCount(bool success, int num_visits, base::Time first_visit);
107 110
108 void RecordUserDecisionToMetrics(Decision decision, 111 void RecordUserDecisionToMetrics(Decision decision,
109 const std::string& histogram_name); 112 const std::string& histogram_name);
110 void RecordUserDecisionToRappor(Decision decision); 113 void RecordUserDecisionToRappor(Decision decision);
111 const GURL request_url_; 114 const GURL request_url_;
112 const ReportDetails settings_; 115 const ReportDetails settings_;
113 rappor::RapporService* rappor_service_; 116 rappor::RapporService* rappor_service_;
114 int num_visits_; 117 int num_visits_;
115 base::CancelableTaskTracker request_tracker_; 118 base::CancelableTaskTracker request_tracker_;
116 119
117 DISALLOW_COPY_AND_ASSIGN(MetricsHelper); 120 DISALLOW_COPY_AND_ASSIGN(MetricsHelper);
118 }; 121 };
119 122
120 } // namespace security_interstitials 123 } // namespace security_interstitials
121 124
122 #endif // COMPONENTS_SECURITY_INTERSTITIALS_CORE_METRICS_HELPER_H_ 125 #endif // COMPONENTS_SECURITY_INTERSTITIALS_CORE_METRICS_HELPER_H_
OLDNEW
« no previous file with comments | « chrome/chrome_browser.gypi ('k') | components/security_interstitials/core/metrics_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698