OLD | NEW |
---|---|
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 NET_PROXY_PROXY_RETRY_INFO_H_ | 5 #ifndef NET_PROXY_PROXY_RETRY_INFO_H_ |
6 #define NET_PROXY_PROXY_RETRY_INFO_H_ | 6 #define NET_PROXY_PROXY_RETRY_INFO_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/time/time.h" | 10 #include "base/time/time.h" |
11 #include "net/base/net_errors.h" | |
Ryan Sleevi
2014/08/18 05:51:12
Don't include this, and init to zero.
| |
11 | 12 |
12 namespace net { | 13 namespace net { |
13 | 14 |
14 // Contains the information about when to retry a proxy server. | 15 // Contains the information about when to retry a proxy server. |
15 struct ProxyRetryInfo { | 16 struct ProxyRetryInfo { |
16 ProxyRetryInfo() : try_while_bad(true) {} | 17 ProxyRetryInfo() : try_while_bad(true), net_error(OK) {} |
17 | 18 |
18 // We should not retry until this time. | 19 // We should not retry until this time. |
19 base::TimeTicks bad_until; | 20 base::TimeTicks bad_until; |
20 | 21 |
21 // This is the current delay. If the proxy is still bad, we need to increase | 22 // This is the current delay. If the proxy is still bad, we need to increase |
22 // this delay. | 23 // this delay. |
23 base::TimeDelta current_delay; | 24 base::TimeDelta current_delay; |
24 | 25 |
25 // True if this proxy should be considered even if still bad. | 26 // True if this proxy should be considered even if still bad. |
26 bool try_while_bad; | 27 bool try_while_bad; |
27 | 28 |
28 // The network error received when this proxy failed, or |OK| if the proxy | 29 // The network error received when this proxy failed, or |OK| if the proxy |
29 // was added to the retry list for a non-network related reason. (e.g. local | 30 // was added to the retry list for a non-network related reason. (e.g. local |
30 // policy). | 31 // policy). |
31 int net_error; | 32 int net_error; |
32 }; | 33 }; |
33 | 34 |
34 // Map of proxy servers with the associated RetryInfo structures. | 35 // Map of proxy servers with the associated RetryInfo structures. |
35 // The key is a proxy URI string [<scheme>"://"]<host>":"<port>. | 36 // The key is a proxy URI string [<scheme>"://"]<host>":"<port>. |
36 typedef std::map<std::string, ProxyRetryInfo> ProxyRetryInfoMap; | 37 typedef std::map<std::string, ProxyRetryInfo> ProxyRetryInfoMap; |
37 | 38 |
38 } // namespace net | 39 } // namespace net |
39 | 40 |
40 #endif // NET_PROXY_PROXY_RETRY_INFO_H_ | 41 #endif // NET_PROXY_PROXY_RETRY_INFO_H_ |
OLD | NEW |