OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 #include "net/proxy/proxy_resolver_v8_tracing_wrapper.h" | 5 #include "net/proxy/proxy_resolver_v8_tracing_wrapper.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 public: | 89 public: |
90 ProxyResolverV8TracingWrapper( | 90 ProxyResolverV8TracingWrapper( |
91 std::unique_ptr<ProxyResolverV8Tracing> resolver_impl, | 91 std::unique_ptr<ProxyResolverV8Tracing> resolver_impl, |
92 NetLog* net_log, | 92 NetLog* net_log, |
93 HostResolver* host_resolver, | 93 HostResolver* host_resolver, |
94 std::unique_ptr<ProxyResolverErrorObserver> error_observer); | 94 std::unique_ptr<ProxyResolverErrorObserver> error_observer); |
95 | 95 |
96 int GetProxyForURL(const GURL& url, | 96 int GetProxyForURL(const GURL& url, |
97 ProxyInfo* results, | 97 ProxyInfo* results, |
98 const CompletionCallback& callback, | 98 const CompletionCallback& callback, |
99 RequestHandle* request, | 99 std::unique_ptr<Request>* request, |
100 const NetLogWithSource& net_log) override; | 100 const NetLogWithSource& net_log) override; |
101 | 101 |
102 void CancelRequest(RequestHandle request) override; | |
103 | |
104 LoadState GetLoadState(RequestHandle request) const override; | |
105 | |
106 private: | 102 private: |
107 std::unique_ptr<ProxyResolverV8Tracing> resolver_impl_; | 103 std::unique_ptr<ProxyResolverV8Tracing> resolver_impl_; |
108 NetLog* net_log_; | 104 NetLog* net_log_; |
109 HostResolver* host_resolver_; | 105 HostResolver* host_resolver_; |
110 std::unique_ptr<ProxyResolverErrorObserver> error_observer_; | 106 std::unique_ptr<ProxyResolverErrorObserver> error_observer_; |
111 | 107 |
112 DISALLOW_COPY_AND_ASSIGN(ProxyResolverV8TracingWrapper); | 108 DISALLOW_COPY_AND_ASSIGN(ProxyResolverV8TracingWrapper); |
113 }; | 109 }; |
114 | 110 |
115 ProxyResolverV8TracingWrapper::ProxyResolverV8TracingWrapper( | 111 ProxyResolverV8TracingWrapper::ProxyResolverV8TracingWrapper( |
116 std::unique_ptr<ProxyResolverV8Tracing> resolver_impl, | 112 std::unique_ptr<ProxyResolverV8Tracing> resolver_impl, |
117 NetLog* net_log, | 113 NetLog* net_log, |
118 HostResolver* host_resolver, | 114 HostResolver* host_resolver, |
119 std::unique_ptr<ProxyResolverErrorObserver> error_observer) | 115 std::unique_ptr<ProxyResolverErrorObserver> error_observer) |
120 : resolver_impl_(std::move(resolver_impl)), | 116 : resolver_impl_(std::move(resolver_impl)), |
121 net_log_(net_log), | 117 net_log_(net_log), |
122 host_resolver_(host_resolver), | 118 host_resolver_(host_resolver), |
123 error_observer_(std::move(error_observer)) {} | 119 error_observer_(std::move(error_observer)) {} |
124 | 120 |
125 int ProxyResolverV8TracingWrapper::GetProxyForURL( | 121 int ProxyResolverV8TracingWrapper::GetProxyForURL( |
126 const GURL& url, | 122 const GURL& url, |
127 ProxyInfo* results, | 123 ProxyInfo* results, |
128 const CompletionCallback& callback, | 124 const CompletionCallback& callback, |
129 RequestHandle* request, | 125 std::unique_ptr<Request>* request, |
130 const NetLogWithSource& net_log) { | 126 const NetLogWithSource& net_log) { |
131 resolver_impl_->GetProxyForURL( | 127 resolver_impl_->GetProxyForURL( |
132 url, results, callback, request, | 128 url, results, callback, request, |
133 base::WrapUnique(new BindingsImpl(error_observer_.get(), host_resolver_, | 129 base::WrapUnique(new BindingsImpl(error_observer_.get(), host_resolver_, |
134 net_log_, net_log))); | 130 net_log_, net_log))); |
135 return ERR_IO_PENDING; | 131 return ERR_IO_PENDING; |
136 } | 132 } |
137 | 133 |
138 void ProxyResolverV8TracingWrapper::CancelRequest(RequestHandle request) { | |
139 resolver_impl_->CancelRequest(request); | |
140 } | |
141 | |
142 LoadState ProxyResolverV8TracingWrapper::GetLoadState( | |
143 RequestHandle request) const { | |
144 return resolver_impl_->GetLoadState(request); | |
145 } | |
146 | |
147 } // namespace | 134 } // namespace |
148 | 135 |
149 ProxyResolverFactoryV8TracingWrapper::ProxyResolverFactoryV8TracingWrapper( | 136 ProxyResolverFactoryV8TracingWrapper::ProxyResolverFactoryV8TracingWrapper( |
150 HostResolver* host_resolver, | 137 HostResolver* host_resolver, |
151 NetLog* net_log, | 138 NetLog* net_log, |
152 const base::Callback<std::unique_ptr<ProxyResolverErrorObserver>()>& | 139 const base::Callback<std::unique_ptr<ProxyResolverErrorObserver>()>& |
153 error_observer_factory) | 140 error_observer_factory) |
154 : ProxyResolverFactory(true), | 141 : ProxyResolverFactory(true), |
155 factory_impl_(ProxyResolverV8TracingFactory::Create()), | 142 factory_impl_(ProxyResolverV8TracingFactory::Create()), |
156 host_resolver_(host_resolver), | 143 host_resolver_(host_resolver), |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 int error) { | 181 int error) { |
195 if (error == OK) { | 182 if (error == OK) { |
196 resolver->reset(new ProxyResolverV8TracingWrapper( | 183 resolver->reset(new ProxyResolverV8TracingWrapper( |
197 std::move(*v8_resolver), net_log_, host_resolver_, | 184 std::move(*v8_resolver), net_log_, host_resolver_, |
198 std::move(error_observer))); | 185 std::move(error_observer))); |
199 } | 186 } |
200 callback.Run(error); | 187 callback.Run(error); |
201 } | 188 } |
202 | 189 |
203 } // namespace net | 190 } // namespace net |
OLD | NEW |