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

Side by Side Diff: components/data_reduction_proxy/browser/data_reduction_proxy_params.h

Issue 390533003: Bypassed Bytes UMAs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added WereProxiesBypassed test and addressed mef comments Created 6 years, 5 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_DATA_REDUCTION_PROXY_BROWSER_DATA_REDUCTION_PROXY_PARAMS_H_ 5 #ifndef COMPONENTS_DATA_REDUCTION_PROXY_BROWSER_DATA_REDUCTION_PROXY_PARAMS_H_
6 #define COMPONENTS_DATA_REDUCTION_PROXY_BROWSER_DATA_REDUCTION_PROXY_PARAMS_H_ 6 #define COMPONENTS_DATA_REDUCTION_PROXY_BROWSER_DATA_REDUCTION_PROXY_PARAMS_H_
7 7
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/macros.h" 12 #include "base/macros.h"
13 #include "net/base/host_port_pair.h" 13 #include "net/base/host_port_pair.h"
14 #include "net/proxy/proxy_retry_info.h"
14 #include "url/gurl.h" 15 #include "url/gurl.h"
15 16
16 namespace net { 17 namespace net {
17 class URLRequest; 18 class URLRequest;
18 } 19 }
19 20
20 namespace data_reduction_proxy { 21 namespace data_reduction_proxy {
21 // Provides initialization parameters. Proxy origins, and the probe url are 22 // Provides initialization parameters. Proxy origins, and the probe url are
22 // are taken from flags if available and from preprocessor constants otherwise. 23 // are taken from flags if available and from preprocessor constants otherwise.
23 // The DataReductionProxySettings class and others use this class to determine 24 // The DataReductionProxySettings class and others use this class to determine
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 // bypassed, if one exists. |proxy_servers| can be NULL if the caller isn't 86 // bypassed, if one exists. |proxy_servers| can be NULL if the caller isn't
86 // interested in its values. Virtual for testing. 87 // interested in its values. Virtual for testing.
87 virtual bool IsDataReductionProxy(const net::HostPortPair& host_port_pair, 88 virtual bool IsDataReductionProxy(const net::HostPortPair& host_port_pair,
88 std::pair<GURL, GURL>* proxy_servers) const; 89 std::pair<GURL, GURL>* proxy_servers) const;
89 90
90 // Returns true if this request will be sent through the data request proxy 91 // Returns true if this request will be sent through the data request proxy
91 // based on applying the param rules to the URL. We do not check bad proxy 92 // based on applying the param rules to the URL. We do not check bad proxy
92 // list. 93 // list.
93 virtual bool IsDataReductionProxyEligible(const net::URLRequest* request); 94 virtual bool IsDataReductionProxyEligible(const net::URLRequest* request);
94 95
96 // Checks if all configured data reduction proxies are in the retry map.
97 // Returns true if the request is bypassed by all configured data reduction
98 // proxies. If there are no configured data reduction proxies, returns false.
99 // It returns the bypass delay in delay_seconds (if not NULL). If
bengr 2014/07/19 00:13:01 It returns --> and returns
megjablon 2014/07/21 19:44:44 Done.
100 // the request is bypassed by more than one proxy, delay_seconds returns
101 // shortest delay.
bengr 2014/07/19 00:13:01 the shortest
megjablon 2014/07/21 19:44:45 Done.
102 bool WereDataReductionProxiesBypassed(const net::URLRequest& request,
103 int64* delay_seconds) const;
104
105 // Checks if all configured data reduction proxies are in the retry map.
106 // Returns true if the request is bypassed by all configured data reduction
107 // proxies. If there are no configured data reduction proxies, returns false.
108 // It returns the bypass delay in delay_seconds (if not NULL). If
bengr 2014/07/19 00:13:01 It -> and
megjablon 2014/07/21 19:44:44 Done.
109 // the request is bypassed by more than one proxy, delay_seconds returns
110 // shortest delay.
bengr 2014/07/19 00:13:01 the shortest
megjablon 2014/07/21 19:44:45 Done.
111 bool WereProxiesBypassed(const net::ProxyRetryInfoMap& retry_map,
bengr 2014/07/19 00:13:01 AreProxies...? I'm not sure if "bypassed" is the
megjablon 2014/07/21 19:44:44 Done.
112 bool ssl,
113 int64* delay_second) const;
114
95 // Returns the data reduction proxy primary origin. 115 // Returns the data reduction proxy primary origin.
96 const GURL& origin() const { 116 const GURL& origin() const {
97 return origin_; 117 return origin_;
98 } 118 }
99 119
100 // Returns the data reduction proxy fallback origin. 120 // Returns the data reduction proxy fallback origin.
101 const GURL& fallback_origin() const { 121 const GURL& fallback_origin() const {
102 return fallback_origin_; 122 return fallback_origin_;
103 } 123 }
104 124
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 GURL probe_url_; 214 GURL probe_url_;
195 GURL warmup_url_; 215 GURL warmup_url_;
196 216
197 bool allowed_; 217 bool allowed_;
198 const bool fallback_allowed_; 218 const bool fallback_allowed_;
199 bool alt_allowed_; 219 bool alt_allowed_;
200 const bool promo_allowed_; 220 const bool promo_allowed_;
201 221
202 bool configured_on_command_line_; 222 bool configured_on_command_line_;
203 223
224 bool WerePrimaryAndFallbackBypassed(const net::ProxyRetryInfoMap& retry_map,
bengr 2014/07/19 00:13:01 Are?
megjablon 2014/07/21 19:44:45 Done.
225 GURL primary,
bengr 2014/07/19 00:13:01 These can be const GURL&.
megjablon 2014/07/21 19:44:45 Done.
226 GURL fallback,
227 int64* delay_seconds) const;
228
204 DISALLOW_COPY_AND_ASSIGN(DataReductionProxyParams); 229 DISALLOW_COPY_AND_ASSIGN(DataReductionProxyParams);
205 }; 230 };
206 231
207 } // namespace data_reduction_proxy 232 } // namespace data_reduction_proxy
208 #endif // COMPONENTS_DATA_REDUCTION_PROXY_BROWSER_DATA_REDUCTION_PROXY_PARAMS_H _ 233 #endif // COMPONENTS_DATA_REDUCTION_PROXY_BROWSER_DATA_REDUCTION_PROXY_PARAMS_H _
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698