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/http/http_cache_transaction.h" | 5 #include "net/http/http_cache_transaction.h" |
6 | 6 |
7 #include "build/build_config.h" | 7 #include "build/build_config.h" |
8 | 8 |
9 #if defined(OS_POSIX) | 9 #if defined(OS_POSIX) |
10 #include <unistd.h> | 10 #include <unistd.h> |
(...skipping 547 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
558 if (network_trans_) | 558 if (network_trans_) |
559 network_trans_->SetWebSocketHandshakeStreamCreateHelper(create_helper); | 559 network_trans_->SetWebSocketHandshakeStreamCreateHelper(create_helper); |
560 } | 560 } |
561 | 561 |
562 void HttpCache::Transaction::SetBeforeNetworkStartCallback( | 562 void HttpCache::Transaction::SetBeforeNetworkStartCallback( |
563 const BeforeNetworkStartCallback& callback) { | 563 const BeforeNetworkStartCallback& callback) { |
564 DCHECK(!network_trans_); | 564 DCHECK(!network_trans_); |
565 before_network_start_callback_ = callback; | 565 before_network_start_callback_ = callback; |
566 } | 566 } |
567 | 567 |
| 568 void HttpCache::Transaction::SetBeforeProxyHeadersSentCallback( |
| 569 const BeforeProxyHeadersSentCallback& callback) { |
| 570 DCHECK(!network_trans_); |
| 571 before_proxy_headers_sent_callback_ = callback; |
| 572 } |
| 573 |
568 int HttpCache::Transaction::ResumeNetworkStart() { | 574 int HttpCache::Transaction::ResumeNetworkStart() { |
569 if (network_trans_) | 575 if (network_trans_) |
570 return network_trans_->ResumeNetworkStart(); | 576 return network_trans_->ResumeNetworkStart(); |
571 return ERR_UNEXPECTED; | 577 return ERR_UNEXPECTED; |
572 } | 578 } |
573 | 579 |
574 //----------------------------------------------------------------------------- | 580 //----------------------------------------------------------------------------- |
575 | 581 |
576 void HttpCache::Transaction::DoCallback(int rv) { | 582 void HttpCache::Transaction::DoCallback(int rv) { |
577 DCHECK(rv != ERR_IO_PENDING); | 583 DCHECK(rv != ERR_IO_PENDING); |
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
886 DCHECK(!network_trans_.get()); | 892 DCHECK(!network_trans_.get()); |
887 | 893 |
888 send_request_since_ = TimeTicks::Now(); | 894 send_request_since_ = TimeTicks::Now(); |
889 | 895 |
890 // Create a network transaction. | 896 // Create a network transaction. |
891 int rv = cache_->network_layer_->CreateTransaction(priority_, | 897 int rv = cache_->network_layer_->CreateTransaction(priority_, |
892 &network_trans_); | 898 &network_trans_); |
893 if (rv != OK) | 899 if (rv != OK) |
894 return rv; | 900 return rv; |
895 network_trans_->SetBeforeNetworkStartCallback(before_network_start_callback_); | 901 network_trans_->SetBeforeNetworkStartCallback(before_network_start_callback_); |
| 902 network_trans_->SetBeforeProxyHeadersSentCallback( |
| 903 before_proxy_headers_sent_callback_); |
896 | 904 |
897 // Old load timing information, if any, is now obsolete. | 905 // Old load timing information, if any, is now obsolete. |
898 old_network_trans_load_timing_.reset(); | 906 old_network_trans_load_timing_.reset(); |
899 | 907 |
900 if (websocket_handshake_stream_base_create_helper_) | 908 if (websocket_handshake_stream_base_create_helper_) |
901 network_trans_->SetWebSocketHandshakeStreamCreateHelper( | 909 network_trans_->SetWebSocketHandshakeStreamCreateHelper( |
902 websocket_handshake_stream_base_create_helper_); | 910 websocket_handshake_stream_base_create_helper_); |
903 | 911 |
904 next_state_ = STATE_SEND_REQUEST_COMPLETE; | 912 next_state_ = STATE_SEND_REQUEST_COMPLETE; |
905 rv = network_trans_->Start(request_, io_callback_, net_log_); | 913 rv = network_trans_->Start(request_, io_callback_, net_log_); |
(...skipping 1624 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2530 default: | 2538 default: |
2531 NOTREACHED(); | 2539 NOTREACHED(); |
2532 } | 2540 } |
2533 } | 2541 } |
2534 | 2542 |
2535 void HttpCache::Transaction::OnIOComplete(int result) { | 2543 void HttpCache::Transaction::OnIOComplete(int result) { |
2536 DoLoop(result); | 2544 DoLoop(result); |
2537 } | 2545 } |
2538 | 2546 |
2539 } // namespace net | 2547 } // namespace net |
OLD | NEW |