| Index: net/base/async_host_resolver.h
|
| diff --git a/net/base/async_host_resolver.h b/net/base/async_host_resolver.h
|
| index 2d55717093e5a7ea04b49a6c2472a2e887406253..c14e700216754b1a797cfb1d0ae29750fa90ca43 100644
|
| --- a/net/base/async_host_resolver.h
|
| +++ b/net/base/async_host_resolver.h
|
| @@ -14,6 +14,7 @@
|
| #include "base/threading/non_thread_safe.h"
|
| #include "net/base/address_family.h"
|
| #include "net/base/dns_transaction.h"
|
| +#include "net/base/host_cache.h"
|
| #include "net/base/host_resolver.h"
|
| #include "net/base/ip_endpoint.h"
|
| #include "net/base/net_log.h"
|
| @@ -33,6 +34,7 @@ class NET_API AsyncHostResolver
|
| size_t max_transactions,
|
| size_t max_pending_requests_,
|
| const RandIntCallback& rand_int,
|
| + HostCache* cache,
|
| ClientSocketFactory* factory,
|
| NetLog* net_log);
|
| virtual ~AsyncHostResolver();
|
| @@ -89,6 +91,9 @@ class NET_API AsyncHostResolver
|
| // Called when a request has been cancelled.
|
| void OnCancel(Request* request);
|
|
|
| + // Tries to serve request from cache.
|
| + bool ServeFromCache(Request* request) const;
|
| +
|
| // If there is an in-progress transaction for Request->key(), this will
|
| // attach |request| to the respective list.
|
| bool AttachToRequestList(Request* request);
|
| @@ -104,7 +109,7 @@ class NET_API AsyncHostResolver
|
| Request* Insert(Request* request);
|
|
|
| // Returns the number of pending requests.
|
| - size_t GetNumPending();
|
| + size_t GetNumPending() const;
|
|
|
| // Removes and returns a pointer to the lowest/highest priority request
|
| // from |pending_requests_|.
|
| @@ -136,6 +141,9 @@ class NET_API AsyncHostResolver
|
| // Callback to be passed to DnsTransaction for generating DNS query ids.
|
| RandIntCallback rand_int_cb_;
|
|
|
| + // Cache of host resolution results.
|
| + scoped_ptr<HostCache> cache_;
|
| +
|
| // Also passed to DnsTransaction; it's a dependency injection to aid
|
| // testing, outside of unit tests, its value is always NULL.
|
| ClientSocketFactory* factory_;
|
|
|