1// Copyright (c) 2010 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_RESOLVER_MAC_H_ 6#define NET_PROXY_PROXY_RESOLVER_MAC_H_ 7#pragma once 8 9#include "googleurl/src/gurl.h" 10#include "net/base/net_errors.h" 11#include "net/proxy/proxy_resolver.h" 12 13namespace net { 14 15// Implementation of ProxyResolver that uses the Mac CFProxySupport to implement 16// proxies. 17class ProxyResolverMac : public ProxyResolver { 18 public: 19 ProxyResolverMac(); 20 virtual ~ProxyResolverMac(); 21 22 // ProxyResolver methods: 23 virtual int GetProxyForURL(const GURL& url, 24 ProxyInfo* results, 25 CompletionCallback* callback, 26 RequestHandle* request, 27 const BoundNetLog& net_log); 28 29 virtual void CancelRequest(RequestHandle request); 30 31 virtual void CancelSetPacScript(); 32 33 virtual int SetPacScript( 34 const scoped_refptr<ProxyResolverScriptData>& script_data, 35 CompletionCallback* /*callback*/); 36 37 private: 38 scoped_refptr<ProxyResolverScriptData> script_data_; 39}; 40 41} // namespace net 42 43#endif // NET_PROXY_PROXY_RESOLVER_MAC_H_ 44