| 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), |
| 85 is_chunked_upload_(false), | 87 is_chunked_upload_(false), |
| 86 was_cancelled_(false), | 88 was_cancelled_(false), |
| 87 stop_on_redirect_(false), | 89 stop_on_redirect_(false), |
| 88 stopped_on_redirect_(false), | 90 stopped_on_redirect_(false), |
| 89 automatically_retry_on_5xx_(true), | 91 automatically_retry_on_5xx_(true), |
| 90 num_retries_on_5xx_(0), | 92 num_retries_on_5xx_(0), |
| 91 max_retries_on_5xx_(0), | 93 max_retries_on_5xx_(0), |
| 92 num_retries_on_network_changes_(0), | 94 num_retries_on_network_changes_(0), |
| 93 max_retries_on_network_changes_(0), | 95 max_retries_on_network_changes_(0), |
| 94 current_upload_bytes_(-1), | 96 current_upload_bytes_(-1), |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 } | 199 } |
| 198 | 200 |
| 199 int URLFetcherCore::GetLoadFlags() const { | 201 int URLFetcherCore::GetLoadFlags() const { |
| 200 return load_flags_; | 202 return load_flags_; |
| 201 } | 203 } |
| 202 | 204 |
| 203 void URLFetcherCore::SetReferrer(const std::string& referrer) { | 205 void URLFetcherCore::SetReferrer(const std::string& referrer) { |
| 204 referrer_ = referrer; | 206 referrer_ = referrer; |
| 205 } | 207 } |
| 206 | 208 |
| 209 void URLFetcherCore::SetReferrerPolicy( |
| 210 URLRequest::ReferrerPolicy referrer_policy) { |
| 211 referrer_policy_ = referrer_policy; |
| 212 } |
| 213 |
| 207 void URLFetcherCore::SetExtraRequestHeaders( | 214 void URLFetcherCore::SetExtraRequestHeaders( |
| 208 const std::string& extra_request_headers) { | 215 const std::string& extra_request_headers) { |
| 209 extra_request_headers_.Clear(); | 216 extra_request_headers_.Clear(); |
| 210 extra_request_headers_.AddHeadersFromString(extra_request_headers); | 217 extra_request_headers_.AddHeadersFromString(extra_request_headers); |
| 211 } | 218 } |
| 212 | 219 |
| 213 void URLFetcherCore::AddExtraRequestHeader(const std::string& header_line) { | 220 void URLFetcherCore::AddExtraRequestHeader(const std::string& header_line) { |
| 214 extra_request_headers_.AddHeaderFromString(header_line); | 221 extra_request_headers_.AddHeaderFromString(header_line); |
| 215 } | 222 } |
| 216 | 223 |
| (...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 503 original_url_, DEFAULT_PRIORITY, this, NULL); | 510 original_url_, DEFAULT_PRIORITY, this, NULL); |
| 504 request_->set_stack_trace(stack_trace_); | 511 request_->set_stack_trace(stack_trace_); |
| 505 int flags = request_->load_flags() | load_flags_; | 512 int flags = request_->load_flags() | load_flags_; |
| 506 if (!g_interception_enabled) | 513 if (!g_interception_enabled) |
| 507 flags = flags | LOAD_DISABLE_INTERCEPT; | 514 flags = flags | LOAD_DISABLE_INTERCEPT; |
| 508 | 515 |
| 509 if (is_chunked_upload_) | 516 if (is_chunked_upload_) |
| 510 request_->EnableChunkedUpload(); | 517 request_->EnableChunkedUpload(); |
| 511 request_->SetLoadFlags(flags); | 518 request_->SetLoadFlags(flags); |
| 512 request_->SetReferrer(referrer_); | 519 request_->SetReferrer(referrer_); |
| 520 request_->set_referrer_policy(referrer_policy_); |
| 513 request_->set_first_party_for_cookies(first_party_for_cookies_.is_empty() ? | 521 request_->set_first_party_for_cookies(first_party_for_cookies_.is_empty() ? |
| 514 original_url_ : first_party_for_cookies_); | 522 original_url_ : first_party_for_cookies_); |
| 515 if (url_request_data_key_ && !url_request_create_data_callback_.is_null()) { | 523 if (url_request_data_key_ && !url_request_create_data_callback_.is_null()) { |
| 516 request_->SetUserData(url_request_data_key_, | 524 request_->SetUserData(url_request_data_key_, |
| 517 url_request_create_data_callback_.Run()); | 525 url_request_create_data_callback_.Run()); |
| 518 } | 526 } |
| 519 | 527 |
| 520 switch (request_type_) { | 528 switch (request_type_) { |
| 521 case URLFetcher::GET: | 529 case URLFetcher::GET: |
| 522 break; | 530 break; |
| (...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 882 } | 890 } |
| 883 | 891 |
| 884 void URLFetcherCore::InformDelegateDownloadProgressInDelegateThread( | 892 void URLFetcherCore::InformDelegateDownloadProgressInDelegateThread( |
| 885 int64 current, int64 total) { | 893 int64 current, int64 total) { |
| 886 DCHECK(delegate_task_runner_->BelongsToCurrentThread()); | 894 DCHECK(delegate_task_runner_->BelongsToCurrentThread()); |
| 887 if (delegate_) | 895 if (delegate_) |
| 888 delegate_->OnURLFetchDownloadProgress(fetcher_, current, total); | 896 delegate_->OnURLFetchDownloadProgress(fetcher_, current, total); |
| 889 } | 897 } |
| 890 | 898 |
| 891 } // namespace net | 899 } // namespace net |
| OLD | NEW |