summaryrefslogtreecommitdiffstats
path: root/chromium/net/proxy/proxy_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/net/proxy/proxy_list.h')
-rw-r--r--chromium/net/proxy/proxy_list.h24
1 files changed, 10 insertions, 14 deletions
diff --git a/chromium/net/proxy/proxy_list.h b/chromium/net/proxy/proxy_list.h
index e8df0ba83fb..ac9635a977a 100644
--- a/chromium/net/proxy/proxy_list.h
+++ b/chromium/net/proxy/proxy_list.h
@@ -39,14 +39,10 @@ class NET_EXPORT_PRIVATE ProxyList {
// Append a single proxy server to the end of the proxy list.
void AddProxyServer(const ProxyServer& proxy_server);
- // De-prioritizes the proxies that we have cached as not working, by moving
- // them to the end of the fallback list.
+ // De-prioritizes the proxies that are cached as not working but are allowed
+ // to be reconsidered, by moving them to the end of the fallback list.
void DeprioritizeBadProxies(const ProxyRetryInfoMap& proxy_retry_info);
- // Returns true if this proxy list contains at least one proxy that is
- // not currently present in |proxy_retry_info|.
- bool HasUntriedProxies(const ProxyRetryInfoMap& proxy_retry_info) const;
-
// Delete any entry which doesn't have one of the specified proxy schemes.
// |scheme_bit_field| is a bunch of ProxyServer::Scheme bitwise ORed together.
void RemoveProxiesWithoutScheme(int scheme_bit_field);
@@ -92,24 +88,24 @@ class NET_EXPORT_PRIVATE ProxyList {
// is bad. This is distinct from Fallback(), above, to allow updating proxy
// retry information without modifying a given transction's proxy list. Will
// retry after |retry_delay| if positive, and will use the default proxy retry
- // duration otherwise. Additionally updates |proxy_retry_info| with
+ // duration otherwise. It may reconsider the proxy beforehand if |reconsider|
+ // is true. Additionally updates |proxy_retry_info| with
// |another_proxy_to_bypass| if non-empty.
void UpdateRetryInfoOnFallback(
ProxyRetryInfoMap* proxy_retry_info,
base::TimeDelta retry_delay,
+ bool reconsider,
const ProxyServer& another_proxy_to_bypass,
const BoundNetLog& net_log) const;
private:
- // Updates |proxy_retry_info| to indicate that the proxy in |proxies_| with
- // the URI of |proxy_key| is bad. The |proxy_key| must start with the scheme
- // (only if https) followed by the host and then an explicit port. For
- // example, if the proxy origin is https://proxy.chromium.org:443/ the key is
- // https://proxy.chrome.org:443 whereas if the origin is
- // http://proxy.chrome.org/, the key is proxy.chrome.org:80.
+ // Updates |proxy_retry_info| to indicate that the |proxy_to_retry| in
+ // |proxies_| is bad for |retry_delay|, but may be reconsidered earlier if
+ // |try_while_bad| is true.
void AddProxyToRetryList(ProxyRetryInfoMap* proxy_retry_info,
base::TimeDelta retry_delay,
- const std::string& proxy_key,
+ bool try_while_bad,
+ const ProxyServer& proxy_to_retry,
const BoundNetLog& net_log) const;
// List of proxies.