OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef NET_PROXY_PROXY_RETRY_INFO_H_ | |
6 #define NET_PROXY_PROXY_RETRY_INFO_H_ | |
7 | |
8 #include <map> | |
9 | |
10 #include "base/time/time.h" | |
11 | |
12 namespace net { | |
13 | |
14 // Contains the information about when to retry a proxy server. | |
15 struct ProxyRetryInfo { | |
16 ProxyRetryInfo() : try_while_bad(true), net_error(0) {} | |
17 | |
18 // We should not retry until this time. | |
19 base::TimeTicks bad_until; | |
20 | |
21 // This is the current delay. If the proxy is still bad, we need to increase | |
22 // this delay. | |
23 base::TimeDelta current_delay; | |
24 | |
25 // True if this proxy should be considered even if still bad. | |
26 bool try_while_bad; | |
27 | |
28 // 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 // policy). | |
31 int net_error; | |
32 }; | |
33 | |
34 // Map of proxy servers with the associated RetryInfo structures. | |
35 // The key is a proxy URI string [<scheme>"://"]<host>":"<port>. | |
36 typedef std::map<std::string, ProxyRetryInfo> ProxyRetryInfoMap; | |
37 | |
38 } // namespace net | |
39 | |
40 #endif // NET_PROXY_PROXY_RETRY_INFO_H_ | |
OLD | NEW |