Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/url_request/url_fetcher_core.h" | 5 #include "net/url_request/url_fetcher_core.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "base/metrics/histogram.h" | 9 #include "base/metrics/histogram.h" |
| 10 #include "base/sequenced_task_runner.h" | 10 #include "base/sequenced_task_runner.h" |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 75 delegate_(d), | 75 delegate_(d), |
| 76 delegate_task_runner_(base::ThreadTaskRunnerHandle::Get()), | 76 delegate_task_runner_(base::ThreadTaskRunnerHandle::Get()), |
| 77 load_flags_(LOAD_NORMAL), | 77 load_flags_(LOAD_NORMAL), |
| 78 response_code_(URLFetcher::RESPONSE_CODE_INVALID), | 78 response_code_(URLFetcher::RESPONSE_CODE_INVALID), |
| 79 buffer_(new IOBuffer(kBufferSize)), | 79 buffer_(new IOBuffer(kBufferSize)), |
| 80 url_request_data_key_(NULL), | 80 url_request_data_key_(NULL), |
| 81 was_fetched_via_proxy_(false), | 81 was_fetched_via_proxy_(false), |
| 82 upload_content_set_(false), | 82 upload_content_set_(false), |
| 83 upload_range_offset_(0), | 83 upload_range_offset_(0), |
| 84 upload_range_length_(0), | 84 upload_range_length_(0), |
| 85 referrer_policy_( | |
| 86 URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE), | |
| 87 is_chunked_upload_(false), | 85 is_chunked_upload_(false), |
| 88 was_cancelled_(false), | 86 was_cancelled_(false), |
| 89 stop_on_redirect_(false), | 87 stop_on_redirect_(false), |
| 90 stopped_on_redirect_(false), | 88 stopped_on_redirect_(false), |
| 91 automatically_retry_on_5xx_(true), | 89 automatically_retry_on_5xx_(true), |
| 92 num_retries_on_5xx_(0), | 90 num_retries_on_5xx_(0), |
| 93 max_retries_on_5xx_(0), | 91 max_retries_on_5xx_(0), |
| 94 num_retries_on_network_changes_(0), | 92 num_retries_on_network_changes_(0), |
| 95 max_retries_on_network_changes_(0), | 93 max_retries_on_network_changes_(0), |
| 96 current_upload_bytes_(-1), | 94 current_upload_bytes_(-1), |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 199 } | 197 } |
| 200 | 198 |
| 201 int URLFetcherCore::GetLoadFlags() const { | 199 int URLFetcherCore::GetLoadFlags() const { |
| 202 return load_flags_; | 200 return load_flags_; |
| 203 } | 201 } |
| 204 | 202 |
| 205 void URLFetcherCore::SetReferrer(const std::string& referrer) { | 203 void URLFetcherCore::SetReferrer(const std::string& referrer) { |
| 206 referrer_ = referrer; | 204 referrer_ = referrer; |
| 207 } | 205 } |
| 208 | 206 |
| 209 void URLFetcherCore::SetReferrerPolicy( | |
| 210 URLRequest::ReferrerPolicy referrer_policy) { | |
| 211 referrer_policy_ = referrer_policy; | |
| 212 } | |
| 213 | |
| 214 void URLFetcherCore::SetExtraRequestHeaders( | 207 void URLFetcherCore::SetExtraRequestHeaders( |
| 215 const std::string& extra_request_headers) { | 208 const std::string& extra_request_headers) { |
| 216 extra_request_headers_.Clear(); | 209 extra_request_headers_.Clear(); |
| 217 extra_request_headers_.AddHeadersFromString(extra_request_headers); | 210 extra_request_headers_.AddHeadersFromString(extra_request_headers); |
| 218 } | 211 } |
| 219 | 212 |
| 220 void URLFetcherCore::AddExtraRequestHeader(const std::string& header_line) { | 213 void URLFetcherCore::AddExtraRequestHeader(const std::string& header_line) { |
| 221 extra_request_headers_.AddHeaderFromString(header_line); | 214 extra_request_headers_.AddHeaderFromString(header_line); |
| 222 } | 215 } |
| 223 | 216 |
| (...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 510 original_url_, DEFAULT_PRIORITY, this, NULL); | 503 original_url_, DEFAULT_PRIORITY, this, NULL); |
| 511 request_->set_stack_trace(stack_trace_); | 504 request_->set_stack_trace(stack_trace_); |
| 512 int flags = request_->load_flags() | load_flags_; | 505 int flags = request_->load_flags() | load_flags_; |
| 513 if (!g_interception_enabled) | 506 if (!g_interception_enabled) |
| 514 flags = flags | LOAD_DISABLE_INTERCEPT; | 507 flags = flags | LOAD_DISABLE_INTERCEPT; |
| 515 | 508 |
| 516 if (is_chunked_upload_) | 509 if (is_chunked_upload_) |
| 517 request_->EnableChunkedUpload(); | 510 request_->EnableChunkedUpload(); |
| 518 request_->SetLoadFlags(flags); | 511 request_->SetLoadFlags(flags); |
| 519 request_->SetReferrer(referrer_); | 512 request_->SetReferrer(referrer_); |
| 520 request_->set_referrer_policy(referrer_policy_); | 513 request_->set_referrer_policy( |
| 514 URLRequest::CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE); | |
|
mmenke
2014/05/01 21:37:26
Is this needed? This is already the default (see
cbentzel
2014/05/01 22:15:57
Done.
| |
| 521 request_->set_first_party_for_cookies(first_party_for_cookies_.is_empty() ? | 515 request_->set_first_party_for_cookies(first_party_for_cookies_.is_empty() ? |
| 522 original_url_ : first_party_for_cookies_); | 516 original_url_ : first_party_for_cookies_); |
| 523 if (url_request_data_key_ && !url_request_create_data_callback_.is_null()) { | 517 if (url_request_data_key_ && !url_request_create_data_callback_.is_null()) { |
| 524 request_->SetUserData(url_request_data_key_, | 518 request_->SetUserData(url_request_data_key_, |
| 525 url_request_create_data_callback_.Run()); | 519 url_request_create_data_callback_.Run()); |
| 526 } | 520 } |
| 527 | 521 |
| 528 switch (request_type_) { | 522 switch (request_type_) { |
| 529 case URLFetcher::GET: | 523 case URLFetcher::GET: |
| 530 break; | 524 break; |
| (...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 890 } | 884 } |
| 891 | 885 |
| 892 void URLFetcherCore::InformDelegateDownloadProgressInDelegateThread( | 886 void URLFetcherCore::InformDelegateDownloadProgressInDelegateThread( |
| 893 int64 current, int64 total) { | 887 int64 current, int64 total) { |
| 894 DCHECK(delegate_task_runner_->BelongsToCurrentThread()); | 888 DCHECK(delegate_task_runner_->BelongsToCurrentThread()); |
| 895 if (delegate_) | 889 if (delegate_) |
| 896 delegate_->OnURLFetchDownloadProgress(fetcher_, current, total); | 890 delegate_->OnURLFetchDownloadProgress(fetcher_, current, total); |
| 897 } | 891 } |
| 898 | 892 |
| 899 } // namespace net | 893 } // namespace net |
| OLD | NEW |