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