// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef NET_PROXY_RESOLUTION_DHCP_PAC_FILE_FETCHER_H_ #define NET_PROXY_RESOLUTION_DHCP_PAC_FILE_FETCHER_H_ #include <string> #include "base/compiler_specific.h" #include "net/base/completion_once_callback.h" #include "net/base/net_export.h" #include "net/proxy_resolution/pac_file_fetcher.h" #include "net/traffic_annotation/network_traffic_annotation.h" #include "url/gurl.h" namespace net { class NetLogWithSource; // Interface for classes that can fetch a PAC file as configured via DHCP. // // The Fetch method on this interface tries to retrieve the most appropriate // PAC script configured via DHCP. // // Normally there are zero or one DHCP scripts configured, but in the // presence of multiple adapters with DHCP enabled, the fetcher resolves // which PAC script to use if one or more are available. class NET_EXPORT_PRIVATE DhcpPacFileFetcher { … }; // A do-nothing retriever, always returns synchronously with // ERR_NOT_IMPLEMENTED result and empty text. class NET_EXPORT_PRIVATE DoNothingDhcpPacFileFetcher : public DhcpPacFileFetcher { … }; } // namespace net #endif // NET_PROXY_RESOLUTION_DHCP_PAC_FILE_FETCHER_H_