Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(299)

Unified Diff: net/dns/mock_host_resolver.h

Issue 2116983002: Change HostResolver::Resolve() to take an std::unique_ptr<Request>* rather than a RequestHandle* (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: http_stream_factory_impl_job_controller_unittest RequestHandle* to unique_ptr Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/dns/mock_host_resolver.h
diff --git a/net/dns/mock_host_resolver.h b/net/dns/mock_host_resolver.h
index c4312fb21512f5c59d48862978f83e5736812a76..175c7c2880c4b9d44fc6ff1335e594ade51f2011 100644
--- a/net/dns/mock_host_resolver.h
+++ b/net/dns/mock_host_resolver.h
@@ -58,6 +58,9 @@ int ParseAddressList(const std::string& host_list,
class MockHostResolverBase : public HostResolver,
public base::SupportsWeakPtr<MockHostResolverBase>,
public base::NonThreadSafe {
+ private:
+ class RequestImpl;
+
public:
~MockHostResolverBase() override;
@@ -82,14 +85,16 @@ class MockHostResolverBase : public HostResolver,
RequestPriority priority,
AddressList* addresses,
const CompletionCallback& callback,
- RequestHandle* out_req,
+ std::unique_ptr<Request>* request,
const BoundNetLog& net_log) override;
int ResolveFromCache(const RequestInfo& info,
AddressList* addresses,
const BoundNetLog& net_log) override;
- void CancelRequest(RequestHandle req) override;
HostCache* GetHostCache() override;
+ // Detach cancelled request.
+ void DetachRequest(size_t id);
+
// Resolves all pending requests. It is only valid to invoke this if
// set_ondemand_mode was set before. The requests are resolved asynchronously,
// after this call returns.
@@ -119,15 +124,14 @@ class MockHostResolverBase : public HostResolver,
explicit MockHostResolverBase(bool use_caching);
private:
- struct Request;
- typedef std::map<size_t, Request*> RequestMap;
+ typedef std::map<size_t, RequestImpl*> RequestMap;
// Resolve as IP or from |cache_| return cached error or
// DNS_CACHE_MISS if failed.
int ResolveFromIPLiteralOrCache(const RequestInfo& info,
AddressList* addresses);
// Resolve via |proc_|.
- int ResolveProc(size_t id, const RequestInfo& info, AddressList* addresses);
+ int ResolveProc(const RequestInfo& info, AddressList* addresses);
// Resolve request stored in |requests_|. Pass rv to callback.
void ResolveNow(size_t id);
@@ -239,12 +243,11 @@ class HangingHostResolver : public HostResolver {
RequestPriority priority,
AddressList* addresses,
const CompletionCallback& callback,
- RequestHandle* out_req,
+ std::unique_ptr<Request>* out_req,
const BoundNetLog& net_log) override;
int ResolveFromCache(const RequestInfo& info,
AddressList* addresses,
const BoundNetLog& net_log) override;
- void CancelRequest(RequestHandle req) override {}
};
// This class sets the default HostResolverProc for a particular scope. The

Powered by Google App Engine
This is Rietveld 408576698