summaryrefslogtreecommitdiffstats
path: root/net/proxy/proxy_service.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/proxy/proxy_service.h')
-rw-r--r--net/proxy/proxy_service.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/net/proxy/proxy_service.h b/net/proxy/proxy_service.h
index 7e4e306..3573711 100644
--- a/net/proxy/proxy_service.h
+++ b/net/proxy/proxy_service.h
@@ -261,6 +261,35 @@ class NET_EXPORT ProxyService : public NetworkChangeNotifier::IPAddressObserver,
// of the default internal PacPollPolicy used by ProxyService.
static scoped_ptr<PacPollPolicy> CreateDefaultPacPollPolicy();
+#if defined(SPDY_PROXY_AUTH_ORIGIN)
+ // Values of the UMA DataReductionProxy.BypassInfo{Primary|Fallback}
+ // histograms. This enum must remain synchronized with the enum of the same
+ // name in metrics/histograms/histograms.xml.
+ enum DataReductionProxyBypassEventType {
+ // Bypass the proxy for less than 30 minutes.
+ SHORT_BYPASS = 0,
+
+ // Bypass the proxy for 30 minutes or more.
+ LONG_BYPASS,
+
+ // Bypass the proxy because of an internal server error.
+ INTERNAL_SERVER_ERROR_BYPASS,
+
+ // Bypass the proxy because of any other error.
+ ERROR_BYPASS,
+
+ // This must always be last.
+ BYPASS_EVENT_TYPE_MAX
+ };
+
+ // Records a |DataReductionProxyBypassEventType| for either the data reduction
+ // proxy (|is_primary| is true) or the data reduction proxy fallback.
+ void RecordDataReductionProxyBypassInfo(
+ bool is_primary,
+ const ProxyServer& proxy_server,
+ DataReductionProxyBypassEventType bypass_type) const;
+#endif
+
private:
FRIEND_TEST_ALL_PREFIXES(ProxyServiceTest, UpdateConfigAfterFailedAutodetect);
FRIEND_TEST_ALL_PREFIXES(ProxyServiceTest, UpdateConfigFromPACToDirect);