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#pragma once
8
9#include <map>
10
11#include "base/time.h"
12
13namespace net {
14
15// Contains the information about when to retry a proxy server.
16struct ProxyRetryInfo {
17  // We should not retry until this time.
18  base::TimeTicks bad_until;
19
20  // This is the current delay. If the proxy is still bad, we need to increase
21  // this delay.
22  base::TimeDelta current_delay;
23};
24
25// Map of proxy servers with the associated RetryInfo structures.
26// The key is a proxy URI string [<scheme>"://"]<host>":"<port>.
27typedef std::map<std::string, ProxyRetryInfo> ProxyRetryInfoMap;
28
29}  // namespace net
30
31#endif  // NET_PROXY_PROXY_RETRY_INFO_H_
32