| Index: net/url_request/url_request_context_builder.h
|
| diff --git a/net/url_request/url_request_context_builder.h b/net/url_request/url_request_context_builder.h
|
| index cf7bba2c6888cb524a704f606c2f1cc903fae122..4b09534775cb4bf058846c9a6cf701828b55f409 100644
|
| --- a/net/url_request/url_request_context_builder.h
|
| +++ b/net/url_request/url_request_context_builder.h
|
| @@ -25,6 +25,8 @@
|
| #include "net/base/net_export.h"
|
| #include "net/base/network_delegate.h"
|
| #include "net/dns/host_resolver.h"
|
| +#include "net/proxy/proxy_config_service.h"
|
| +#include "net/proxy/proxy_service.h"
|
| #include "net/socket/next_proto.h"
|
|
|
| namespace net {
|
| @@ -74,7 +76,14 @@ class NET_EXPORT URLRequestContextBuilder {
|
| URLRequestContextBuilder();
|
| ~URLRequestContextBuilder();
|
|
|
| - void set_proxy_config_service(ProxyConfigService* proxy_config_service);
|
| + // These functions are mutually exclusive. The ProxyConfigService, if
|
| + // set, will be used to construct a ProxyService.
|
| + void set_proxy_config_service(ProxyConfigService* proxy_config_service) {
|
| + proxy_config_service_.reset(proxy_config_service);
|
| + }
|
| + void set_proxy_service(ProxyService* proxy_service) {
|
| + proxy_service_.reset(proxy_service);
|
| + }
|
|
|
| // Call these functions to specify hard-coded Accept-Language
|
| // or User-Agent header values for all requests that don't
|
| @@ -105,6 +114,12 @@ class NET_EXPORT URLRequestContextBuilder {
|
| }
|
| #endif
|
|
|
| + // TODO(mmenke): Probably makes sense to get rid of this, and have consumers
|
| + // set their own NetLog::Observers instead.
|
| + void set_net_log(NetLog* net_log) {
|
| + net_log_.reset(net_log);
|
| + }
|
| +
|
| // By default host_resolver is constructed with CreateDefaultResolver.
|
| void set_host_resolver(HostResolver* host_resolver) {
|
| host_resolver_.reset(host_resolver);
|
| @@ -128,15 +143,8 @@ class NET_EXPORT URLRequestContextBuilder {
|
| }
|
|
|
| // By default HttpCache is enabled with a default constructed HttpCacheParams.
|
| - void EnableHttpCache(const HttpCacheParams& params) {
|
| - http_cache_enabled_ = true;
|
| - http_cache_params_ = params;
|
| - }
|
| -
|
| - void DisableHttpCache() {
|
| - http_cache_enabled_ = false;
|
| - http_cache_params_ = HttpCacheParams();
|
| - }
|
| + void EnableHttpCache(const HttpCacheParams& params);
|
| + void DisableHttpCache();
|
|
|
| // Override default net::HttpNetworkSession::Params settings.
|
| void set_http_network_session_params(
|
| @@ -144,10 +152,19 @@ class NET_EXPORT URLRequestContextBuilder {
|
| http_network_session_params_ = http_network_session_params;
|
| }
|
|
|
| + void set_transport_security_persister_path(
|
| + const base::FilePath& transport_security_persister_path) {
|
| + transport_security_persister_path_ = transport_security_persister_path;
|
| + }
|
| +
|
| // Adjust |http_network_session_params_.next_protos| to enable SPDY and QUIC.
|
| void SetSpdyAndQuicEnabled(bool spdy_enabled,
|
| bool quic_enabled);
|
|
|
| + void set_throttling_enabled(bool throttling_enabled) {
|
| + throttling_enabled_ = throttling_enabled;
|
| + }
|
| +
|
| URLRequestContext* Build();
|
|
|
| private:
|
| @@ -173,10 +190,15 @@ class NET_EXPORT URLRequestContextBuilder {
|
| bool ftp_enabled_;
|
| #endif
|
| bool http_cache_enabled_;
|
| + bool throttling_enabled_;
|
| +
|
| HttpCacheParams http_cache_params_;
|
| HttpNetworkSessionParams http_network_session_params_;
|
| + base::FilePath transport_security_persister_path_;
|
| + scoped_ptr<NetLog> net_log_;
|
| scoped_ptr<HostResolver> host_resolver_;
|
| scoped_ptr<ProxyConfigService> proxy_config_service_;
|
| + scoped_ptr<ProxyService> proxy_service_;
|
| scoped_ptr<NetworkDelegate> network_delegate_;
|
| scoped_ptr<FtpTransactionFactory> ftp_transaction_factory_;
|
| std::vector<SchemeFactory> extra_http_auth_handlers_;
|
|
|