| Index: components/cronet/url_request_context_config.cc
|
| diff --git a/components/cronet/url_request_context_config.cc b/components/cronet/url_request_context_config.cc
|
| index 2845bc8746c1f07fec3a568aca622ccb725c6e94..90312a36522074a5fb32131bd7ac24d88851b1f7 100644
|
| --- a/components/cronet/url_request_context_config.cc
|
| +++ b/components/cronet/url_request_context_config.cc
|
| @@ -29,18 +29,6 @@ const char kQuicMaxNumberOfLossyConnections[] =
|
| "max_number_of_lossy_connections";
|
| const char kQuicPacketLossThreshold[] = "packet_loss_threshold";
|
|
|
| -// Using a reference to scoped_ptr is unavoidable because of the semantics of
|
| -// RegisterCustomField.
|
| -// TODO(xunjieli): Remove this once crbug.com/544976 is fixed.
|
| -bool GetMockCertVerifierFromString(
|
| - const base::StringPiece& mock_cert_verifier_string,
|
| - scoped_ptr<net::CertVerifier>* result) {
|
| - int64 val;
|
| - bool success = base::StringToInt64(mock_cert_verifier_string, &val);
|
| - *result = make_scoped_ptr(reinterpret_cast<net::CertVerifier*>(val));
|
| - return success;
|
| -}
|
| -
|
| void ParseAndSetExperimentalOptions(
|
| const std::string& experimental_options,
|
| net::URLRequestContextBuilder* context_builder) {
|
| @@ -103,83 +91,63 @@ void ParseAndSetExperimentalOptions(
|
| }
|
| }
|
|
|
| -bool GetTimeFromDouble(const base::Value* json_value, base::Time* time) {
|
| - double time_double;
|
| - bool success = json_value->GetAsDouble(&time_double);
|
| - if (success) {
|
| - *time = base::Time::FromDoubleT(time_double);
|
| - }
|
| - return success;
|
| -}
|
| -
|
| } // namespace
|
|
|
| -#define DEFINE_CONTEXT_CONFIG(x) const char REQUEST_CONTEXT_CONFIG_##x[] = #x;
|
| -#include "components/cronet/url_request_context_config_list.h"
|
| -#undef DEFINE_CONTEXT_CONFIG
|
| -
|
| -URLRequestContextConfig::QuicHint::QuicHint() {}
|
| +URLRequestContextConfig::QuicHint::QuicHint(const std::string& host,
|
| + int port,
|
| + int alternate_port)
|
| + : host(host), port(port), alternate_port(alternate_port) {}
|
|
|
| URLRequestContextConfig::QuicHint::~QuicHint() {}
|
|
|
| -// static
|
| -void URLRequestContextConfig::QuicHint::RegisterJSONConverter(
|
| - base::JSONValueConverter<URLRequestContextConfig::QuicHint>* converter) {
|
| - converter->RegisterStringField(REQUEST_CONTEXT_CONFIG_QUIC_HINT_HOST,
|
| - &URLRequestContextConfig::QuicHint::host);
|
| - converter->RegisterIntField(
|
| - REQUEST_CONTEXT_CONFIG_QUIC_HINT_PORT,
|
| - &URLRequestContextConfig::QuicHint::port);
|
| - converter->RegisterIntField(
|
| - REQUEST_CONTEXT_CONFIG_QUIC_HINT_ALT_PORT,
|
| - &URLRequestContextConfig::QuicHint::alternate_port);
|
| -}
|
| -
|
| -URLRequestContextConfig::Pkp::Pkp() {}
|
| +URLRequestContextConfig::Pkp::Pkp(const std::string& host,
|
| + bool include_subdomains,
|
| + const base::Time& expiration_date)
|
| + : host(host),
|
| + include_subdomains(include_subdomains),
|
| + expiration_date(expiration_date) {}
|
|
|
| URLRequestContextConfig::Pkp::~Pkp() {}
|
|
|
| -// static
|
| -void URLRequestContextConfig::Pkp::RegisterJSONConverter(
|
| - base::JSONValueConverter<URLRequestContextConfig::Pkp>* converter) {
|
| - converter->RegisterStringField(REQUEST_CONTEXT_CONFIG_PKP_HOST,
|
| - &URLRequestContextConfig::Pkp::host);
|
| - converter->RegisterRepeatedString(REQUEST_CONTEXT_CONFIG_PKP_PIN_HASHES,
|
| - &URLRequestContextConfig::Pkp::pin_hashes);
|
| - converter->RegisterBoolField(
|
| - REQUEST_CONTEXT_CONFIG_PKP_INCLUDE_SUBDOMAINS,
|
| - &URLRequestContextConfig::Pkp::include_subdomains);
|
| - converter->RegisterCustomValueField<base::Time>(
|
| - REQUEST_CONTEXT_CONFIG_PKP_EXPIRATION_DATE,
|
| - &URLRequestContextConfig::Pkp::expiration_date, &GetTimeFromDouble);
|
| -}
|
| -
|
| -URLRequestContextConfig::URLRequestContextConfig() {}
|
| +URLRequestContextConfig::URLRequestContextConfig(
|
| + bool enable_quic,
|
| + bool enable_spdy,
|
| + bool enable_sdch,
|
| + HttpCacheType http_cache,
|
| + int http_cache_max_size,
|
| + bool load_disable_cache,
|
| + const std::string& storage_path,
|
| + const std::string& user_agent,
|
| + const std::string& experimental_options,
|
| + const std::string& data_reduction_proxy_key,
|
| + const std::string& data_reduction_primary_proxy,
|
| + const std::string& data_reduction_fallback_proxy,
|
| + const std::string& data_reduction_secure_proxy_check_url,
|
| + scoped_ptr<net::CertVerifier> mock_cert_verifier)
|
| + : enable_quic(enable_quic),
|
| + enable_spdy(enable_spdy),
|
| + enable_sdch(enable_sdch),
|
| + http_cache(http_cache),
|
| + http_cache_max_size(http_cache_max_size),
|
| + load_disable_cache(load_disable_cache),
|
| + storage_path(storage_path),
|
| + user_agent(user_agent),
|
| + experimental_options(experimental_options),
|
| + data_reduction_proxy_key(data_reduction_proxy_key),
|
| + data_reduction_primary_proxy(data_reduction_primary_proxy),
|
| + data_reduction_fallback_proxy(data_reduction_fallback_proxy),
|
| + data_reduction_secure_proxy_check_url(
|
| + data_reduction_secure_proxy_check_url),
|
| + mock_cert_verifier(std::move(mock_cert_verifier)) {}
|
|
|
| URLRequestContextConfig::~URLRequestContextConfig() {}
|
|
|
| -bool URLRequestContextConfig::LoadFromJSON(const std::string& config_string) {
|
| - scoped_ptr<base::Value> config_value = base::JSONReader::Read(config_string);
|
| - if (!config_value || !config_value->IsType(base::Value::TYPE_DICTIONARY)) {
|
| - DLOG(ERROR) << "Bad JSON: " << config_string;
|
| - return false;
|
| - }
|
| -
|
| - base::JSONValueConverter<URLRequestContextConfig> converter;
|
| - if (!converter.Convert(*config_value, this)) {
|
| - DLOG(ERROR) << "Bad Config: " << config_value;
|
| - return false;
|
| - }
|
| - return true;
|
| -}
|
| -
|
| void URLRequestContextConfig::ConfigureURLRequestContextBuilder(
|
| net::URLRequestContextBuilder* context_builder) {
|
| std::string config_cache;
|
| - if (http_cache != REQUEST_CONTEXT_CONFIG_HTTP_CACHE_DISABLED) {
|
| + if (http_cache != DISABLED) {
|
| net::URLRequestContextBuilder::HttpCacheParams cache_params;
|
| - if (http_cache == REQUEST_CONTEXT_CONFIG_HTTP_CACHE_DISK &&
|
| - !storage_path.empty()) {
|
| + if (http_cache == DISK && !storage_path.empty()) {
|
| cache_params.type = net::URLRequestContextBuilder::HttpCacheParams::DISK;
|
| cache_params.path = base::FilePath(storage_path);
|
| } else {
|
| @@ -202,50 +170,4 @@ void URLRequestContextConfig::ConfigureURLRequestContextBuilder(
|
| // TODO(mef): Use |config| to set cookies.
|
| }
|
|
|
| -// static
|
| -void URLRequestContextConfig::RegisterJSONConverter(
|
| - base::JSONValueConverter<URLRequestContextConfig>* converter) {
|
| - converter->RegisterStringField(REQUEST_CONTEXT_CONFIG_USER_AGENT,
|
| - &URLRequestContextConfig::user_agent);
|
| - converter->RegisterStringField(REQUEST_CONTEXT_CONFIG_STORAGE_PATH,
|
| - &URLRequestContextConfig::storage_path);
|
| - converter->RegisterBoolField(REQUEST_CONTEXT_CONFIG_ENABLE_QUIC,
|
| - &URLRequestContextConfig::enable_quic);
|
| - converter->RegisterBoolField(REQUEST_CONTEXT_CONFIG_ENABLE_SPDY,
|
| - &URLRequestContextConfig::enable_spdy);
|
| - converter->RegisterBoolField(REQUEST_CONTEXT_CONFIG_ENABLE_SDCH,
|
| - &URLRequestContextConfig::enable_sdch);
|
| - converter->RegisterStringField(REQUEST_CONTEXT_CONFIG_HTTP_CACHE,
|
| - &URLRequestContextConfig::http_cache);
|
| - converter->RegisterBoolField(REQUEST_CONTEXT_CONFIG_LOAD_DISABLE_CACHE,
|
| - &URLRequestContextConfig::load_disable_cache);
|
| - converter->RegisterIntField(REQUEST_CONTEXT_CONFIG_HTTP_CACHE_MAX_SIZE,
|
| - &URLRequestContextConfig::http_cache_max_size);
|
| - converter->RegisterRepeatedMessage(REQUEST_CONTEXT_CONFIG_QUIC_HINTS,
|
| - &URLRequestContextConfig::quic_hints);
|
| - converter->RegisterStringField(
|
| - REQUEST_CONTEXT_CONFIG_EXPERIMENTAL_OPTIONS,
|
| - &URLRequestContextConfig::experimental_options);
|
| - converter->RegisterStringField(
|
| - REQUEST_CONTEXT_CONFIG_DATA_REDUCTION_PRIMARY_PROXY,
|
| - &URLRequestContextConfig::data_reduction_primary_proxy);
|
| - converter->RegisterStringField(
|
| - REQUEST_CONTEXT_CONFIG_DATA_REDUCTION_FALLBACK_PROXY,
|
| - &URLRequestContextConfig::data_reduction_fallback_proxy);
|
| - converter->RegisterStringField(
|
| - REQUEST_CONTEXT_CONFIG_DATA_REDUCTION_SECURE_PROXY_CHECK_URL,
|
| - &URLRequestContextConfig::data_reduction_secure_proxy_check_url);
|
| - converter->RegisterStringField(
|
| - REQUEST_CONTEXT_CONFIG_DATA_REDUCTION_PROXY_KEY,
|
| - &URLRequestContextConfig::data_reduction_proxy_key);
|
| - converter->RegisterRepeatedMessage(REQUEST_CONTEXT_CONFIG_PKP_LIST,
|
| - &URLRequestContextConfig::pkp_list);
|
| -
|
| - // For Testing.
|
| - converter->RegisterCustomField<scoped_ptr<net::CertVerifier>>(
|
| - REQUEST_CONTEXT_CONFIG_MOCK_CERT_VERIFIER,
|
| - &URLRequestContextConfig::mock_cert_verifier,
|
| - &GetMockCertVerifierFromString);
|
| -}
|
| -
|
| } // namespace cronet
|
|
|