OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef NET_PROXY_PROXY_RESOLVER_V8_H_ | 5 #ifndef NET_PROXY_PROXY_RESOLVER_V8_H_ |
6 #define NET_PROXY_PROXY_RESOLVER_V8_H_ | 6 #define NET_PROXY_PROXY_RESOLVER_V8_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "base/scoped_ptr.h" | 9 #include "base/scoped_ptr.h" |
10 #include "net/proxy/proxy_resolver.h" | 10 #include "net/proxy/proxy_resolver.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 // and does not use locking since it expects to be alone. | 33 // and does not use locking since it expects to be alone. |
34 class ProxyResolverV8 : public ProxyResolver { | 34 class ProxyResolverV8 : public ProxyResolver { |
35 public: | 35 public: |
36 // Constructs a ProxyResolverV8 with custom bindings. ProxyResolverV8 takes | 36 // Constructs a ProxyResolverV8 with custom bindings. ProxyResolverV8 takes |
37 // ownership of |custom_js_bindings| and deletes it when ProxyResolverV8 | 37 // ownership of |custom_js_bindings| and deletes it when ProxyResolverV8 |
38 // is destroyed. | 38 // is destroyed. |
39 explicit ProxyResolverV8(ProxyResolverJSBindings* custom_js_bindings); | 39 explicit ProxyResolverV8(ProxyResolverJSBindings* custom_js_bindings); |
40 | 40 |
41 virtual ~ProxyResolverV8(); | 41 virtual ~ProxyResolverV8(); |
42 | 42 |
| 43 ProxyResolverJSBindings* js_bindings() const { return js_bindings_.get(); } |
| 44 |
43 // ProxyResolver implementation: | 45 // ProxyResolver implementation: |
44 virtual int GetProxyForURL(const GURL& url, | 46 virtual int GetProxyForURL(const GURL& url, |
45 ProxyInfo* results, | 47 ProxyInfo* results, |
46 CompletionCallback* /*callback*/, | 48 CompletionCallback* /*callback*/, |
47 RequestHandle* /*request*/, | 49 RequestHandle* /*request*/, |
48 const BoundNetLog& net_log); | 50 const BoundNetLog& net_log); |
49 virtual void CancelRequest(RequestHandle request); | 51 virtual void CancelRequest(RequestHandle request); |
50 virtual void CancelSetPacScript(); | 52 virtual void CancelSetPacScript(); |
51 virtual void PurgeMemory(); | 53 virtual void PurgeMemory(); |
52 virtual void Shutdown(); | 54 virtual void Shutdown(); |
53 virtual int SetPacScript( | 55 virtual int SetPacScript( |
54 const scoped_refptr<ProxyResolverScriptData>& script_data, | 56 const scoped_refptr<ProxyResolverScriptData>& script_data, |
55 CompletionCallback* /*callback*/); | 57 CompletionCallback* /*callback*/); |
56 | 58 |
57 ProxyResolverJSBindings* js_bindings() const { return js_bindings_.get(); } | |
58 | |
59 private: | 59 private: |
60 // Context holds the Javascript state for the most recently loaded PAC | 60 // Context holds the Javascript state for the most recently loaded PAC |
61 // script. It corresponds with the data from the last call to | 61 // script. It corresponds with the data from the last call to |
62 // SetPacScript(). | 62 // SetPacScript(). |
63 class Context; | 63 class Context; |
64 scoped_ptr<Context> context_; | 64 scoped_ptr<Context> context_; |
65 | 65 |
66 scoped_ptr<ProxyResolverJSBindings> js_bindings_; | 66 scoped_ptr<ProxyResolverJSBindings> js_bindings_; |
67 | 67 |
68 DISALLOW_COPY_AND_ASSIGN(ProxyResolverV8); | 68 DISALLOW_COPY_AND_ASSIGN(ProxyResolverV8); |
69 }; | 69 }; |
70 | 70 |
71 } // namespace net | 71 } // namespace net |
72 | 72 |
73 #endif // NET_PROXY_PROXY_RESOLVER_V8_H_ | 73 #endif // NET_PROXY_PROXY_RESOLVER_V8_H_ |
OLD | NEW |