| Index: net/proxy/mock_proxy_resolver.h
|
| diff --git a/net/proxy/mock_proxy_resolver.h b/net/proxy/mock_proxy_resolver.h
|
| index 9ed3348b3fae072f04a04a101e3d3c0bcfeee85f..71ca2b243137f60c00819c80bb5eb98dd8feaa70 100644
|
| --- a/net/proxy/mock_proxy_resolver.h
|
| +++ b/net/proxy/mock_proxy_resolver.h
|
| @@ -21,27 +21,26 @@ class MessageLoop;
|
| namespace net {
|
|
|
| // Asynchronous mock proxy resolver. All requests complete asynchronously,
|
| -// user must call Request::CompleteNow() on a pending request to signal it.
|
| +// user must call Job::CompleteNow() on a pending request to signal it.
|
| class MockAsyncProxyResolver : public ProxyResolver {
|
| public:
|
| - class Request : public base::RefCounted<Request> {
|
| + class Job {
|
| public:
|
| - Request(MockAsyncProxyResolver* resolver,
|
| - const GURL& url,
|
| - ProxyInfo* results,
|
| - const CompletionCallback& callback);
|
| + Job(MockAsyncProxyResolver* resolver,
|
| + const GURL& url,
|
| + ProxyInfo* results,
|
| + const CompletionCallback& callback);
|
|
|
| const GURL& url() const { return url_; }
|
| ProxyInfo* results() const { return results_; }
|
| const CompletionCallback& callback() const { return callback_; }
|
| + MockAsyncProxyResolver* Resolver() const { return resolver_; };
|
|
|
| void CompleteNow(int rv);
|
|
|
| - private:
|
| - friend class base::RefCounted<Request>;
|
| -
|
| - virtual ~Request();
|
| + ~Job();
|
|
|
| + private:
|
| MockAsyncProxyResolver* resolver_;
|
| const GURL url_;
|
| ProxyInfo* results_;
|
| @@ -49,7 +48,17 @@ class MockAsyncProxyResolver : public ProxyResolver {
|
| base::MessageLoop* origin_loop_;
|
| };
|
|
|
| - typedef std::vector<scoped_refptr<Request> > RequestsList;
|
| + class RequestImpl : public ProxyResolver::Request {
|
| + public:
|
| + explicit RequestImpl(scoped_ptr<Job> job);
|
| +
|
| + ~RequestImpl() override;
|
| +
|
| + LoadState GetLoadState() override;
|
| +
|
| + private:
|
| + scoped_ptr<Job> job_;
|
| + };
|
|
|
| MockAsyncProxyResolver();
|
| ~MockAsyncProxyResolver() override;
|
| @@ -58,23 +67,20 @@ class MockAsyncProxyResolver : public ProxyResolver {
|
| int GetProxyForURL(const GURL& url,
|
| ProxyInfo* results,
|
| const CompletionCallback& callback,
|
| - RequestHandle* request_handle,
|
| + scoped_ptr<Request>* request,
|
| const BoundNetLog& /*net_log*/) override;
|
| - void CancelRequest(RequestHandle request_handle) override;
|
| - LoadState GetLoadState(RequestHandle request_handle) const override;
|
| - const RequestsList& pending_requests() const {
|
| - return pending_requests_;
|
| - }
|
| + const std::vector<Job*>& pending_jobs() const { return pending_jobs_; }
|
|
|
| - const RequestsList& cancelled_requests() const {
|
| - return cancelled_requests_;
|
| + const std::vector<scoped_ptr<Job>>& cancelled_jobs() const {
|
| + return cancelled_jobs_;
|
| }
|
|
|
| - void RemovePendingRequest(Request* request);
|
| + void AddCancelledJob(scoped_ptr<Job> job);
|
| + void RemovePendingJob(Job* job);
|
|
|
| private:
|
| - RequestsList pending_requests_;
|
| - RequestsList cancelled_requests_;
|
| + std::vector<Job*> pending_jobs_;
|
| + std::vector<scoped_ptr<Job>> cancelled_jobs_;
|
| };
|
|
|
| // Asynchronous mock proxy resolver factory . All requests complete
|
| @@ -151,10 +157,8 @@ class ForwardingProxyResolver : public ProxyResolver {
|
| int GetProxyForURL(const GURL& query_url,
|
| ProxyInfo* results,
|
| const CompletionCallback& callback,
|
| - RequestHandle* request,
|
| + scoped_ptr<Request>* request,
|
| const BoundNetLog& net_log) override;
|
| - void CancelRequest(RequestHandle request) override;
|
| - LoadState GetLoadState(RequestHandle request) const override;
|
|
|
| private:
|
| ProxyResolver* impl_;
|
|
|