// Copyright (c) 2010 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef NET_URL_REQUEST_URL_REQUEST_THROTTLER_HEADER_INTERFACE_H_
#define NET_URL_REQUEST_URL_REQUEST_THROTTLER_HEADER_INTERFACE_H_
#include <string>
namespace net {
// Interface to an HTTP header to enforce we have the methods we need.
class URLRequestThrottlerHeaderInterface {
public:
virtual ~URLRequestThrottlerHeaderInterface() {}
// Method that enables us to fetch the header value by its key.
// ex: location: www.example.com -> key = "location" value = "www.example.com"
// If the key does not exist, it returns an empty string.
virtual std::string GetNormalizedValue(const std::string& key) const = 0;
// Returns the HTTP response code associated with the request.
virtual int GetResponseCode() const = 0;
};
} // namespace net
#endif // NET_URL_REQUEST_URL_REQUEST_THROTTLER_HEADER_INTERFACE_H_