Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(198)

Side by Side Diff: net/tools/quic/test_tools/quic_test_client.cc

Issue 1006193003: Remove Balsa from QuicSpdyClientStream. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix comments Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/tools/quic/test_tools/quic_test_client.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/tools/quic/test_tools/quic_test_client.h" 5 #include "net/tools/quic/test_tools/quic_test_client.h"
6 6
7 #include "base/time/time.h" 7 #include "base/time/time.h"
8 #include "net/base/completion_callback.h" 8 #include "net/base/completion_callback.h"
9 #include "net/base/net_errors.h" 9 #include "net/base/net_errors.h"
10 #include "net/cert/cert_verify_result.h" 10 #include "net/cert/cert_verify_result.h"
11 #include "net/cert/x509_certificate.h" 11 #include "net/cert/x509_certificate.h"
12 #include "net/quic/crypto/proof_verifier.h" 12 #include "net/quic/crypto/proof_verifier.h"
13 #include "net/quic/quic_server_id.h" 13 #include "net/quic/quic_server_id.h"
14 #include "net/quic/test_tools/quic_connection_peer.h" 14 #include "net/quic/test_tools/quic_connection_peer.h"
15 #include "net/quic/test_tools/quic_session_peer.h" 15 #include "net/quic/test_tools/quic_session_peer.h"
16 #include "net/quic/test_tools/quic_test_utils.h" 16 #include "net/quic/test_tools/quic_test_utils.h"
17 #include "net/quic/test_tools/reliable_quic_stream_peer.h" 17 #include "net/quic/test_tools/reliable_quic_stream_peer.h"
18 #include "net/tools/balsa/balsa_headers.h" 18 #include "net/tools/balsa/balsa_headers.h"
19 #include "net/tools/quic/quic_epoll_connection_helper.h" 19 #include "net/tools/quic/quic_epoll_connection_helper.h"
20 #include "net/tools/quic/quic_packet_writer_wrapper.h" 20 #include "net/tools/quic/quic_packet_writer_wrapper.h"
21 #include "net/tools/quic/quic_spdy_client_stream.h" 21 #include "net/tools/quic/quic_spdy_client_stream.h"
22 #include "net/tools/quic/spdy_utils.h"
22 #include "net/tools/quic/test_tools/http_message.h" 23 #include "net/tools/quic/test_tools/http_message.h"
23 #include "net/tools/quic/test_tools/quic_client_peer.h" 24 #include "net/tools/quic/test_tools/quic_client_peer.h"
24 #include "url/gurl.h" 25 #include "url/gurl.h"
25 26
26 using base::StringPiece; 27 using base::StringPiece;
27 using net::QuicServerId; 28 using net::QuicServerId;
28 using net::test::QuicConnectionPeer; 29 using net::test::QuicConnectionPeer;
29 using net::test::QuicSessionPeer; 30 using net::test::QuicSessionPeer;
30 using net::test::ReliableQuicStreamPeer; 31 using net::test::ReliableQuicStreamPeer;
31 using std::string; 32 using std::string;
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 PRIVACY_MODE_DISABLED)); 249 PRIVACY_MODE_DISABLED));
249 } 250 }
250 } 251 }
251 252
252 QuicSpdyClientStream* stream = GetOrCreateStream(); 253 QuicSpdyClientStream* stream = GetOrCreateStream();
253 if (!stream) { return 0; } 254 if (!stream) { return 0; }
254 255
255 scoped_ptr<BalsaHeaders> munged_headers(MungeHeaders(message.headers(), 256 scoped_ptr<BalsaHeaders> munged_headers(MungeHeaders(message.headers(),
256 secure_)); 257 secure_));
257 ssize_t ret = GetOrCreateStream()->SendRequest( 258 ssize_t ret = GetOrCreateStream()->SendRequest(
258 munged_headers.get() ? *munged_headers : *message.headers(), 259 SpdyUtils::RequestHeadersToSpdyHeaders(
260 munged_headers.get() ? *munged_headers : *message.headers()),
259 message.body(), message.has_complete_message()); 261 message.body(), message.has_complete_message());
260 WaitForWriteToFlush(); 262 WaitForWriteToFlush();
261 return ret; 263 return ret;
262 } 264 }
263 265
264 ssize_t QuicTestClient::SendData(string data, bool last_data) { 266 ssize_t QuicTestClient::SendData(string data, bool last_data) {
265 return SendData(data, last_data, nullptr); 267 return SendData(data, last_data, nullptr);
266 } 268 }
267 269
268 ssize_t QuicTestClient::SendData(string data, 270 ssize_t QuicTestClient::SendData(string data,
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 } 451 }
450 } 452 }
451 453
452 ssize_t QuicTestClient::Send(const void *buffer, size_t size) { 454 ssize_t QuicTestClient::Send(const void *buffer, size_t size) {
453 return SendData(string(static_cast<const char*>(buffer), size), false); 455 return SendData(string(static_cast<const char*>(buffer), size), false);
454 } 456 }
455 457
456 bool QuicTestClient::response_headers_complete() const { 458 bool QuicTestClient::response_headers_complete() const {
457 if (stream_ != nullptr) { 459 if (stream_ != nullptr) {
458 return stream_->headers_decompressed(); 460 return stream_->headers_decompressed();
459 } else {
460 return response_headers_complete_;
461 } 461 }
462 return response_headers_complete_;
462 } 463 }
463 464
464 const BalsaHeaders* QuicTestClient::response_headers() const { 465 const BalsaHeaders* QuicTestClient::response_headers() const {
465 if (stream_ != nullptr) { 466 if (stream_ != nullptr) {
466 return &stream_->headers(); 467 SpdyUtils::SpdyHeadersToResponseHeaders(stream_->headers(), &headers_);
468 return &headers_;
467 } else { 469 } else {
468 return &headers_; 470 return &headers_;
469 } 471 }
470 } 472 }
471 473
472 int64 QuicTestClient::response_size() const { 474 int64 QuicTestClient::response_size() const {
473 return bytes_read_; 475 return bytes_read_;
474 } 476 }
475 477
476 size_t QuicTestClient::bytes_read() const { 478 size_t QuicTestClient::bytes_read() const {
477 return bytes_read_; 479 return bytes_read_;
478 } 480 }
479 481
480 size_t QuicTestClient::bytes_written() const { 482 size_t QuicTestClient::bytes_written() const {
481 return bytes_written_; 483 return bytes_written_;
482 } 484 }
483 485
484 void QuicTestClient::OnClose(QuicDataStream* stream) { 486 void QuicTestClient::OnClose(QuicDataStream* stream) {
485 if (stream_ != stream) { 487 if (stream_ != stream) {
486 return; 488 return;
487 } 489 }
488 if (buffer_body()) { 490 if (buffer_body()) {
489 // TODO(fnk): The stream still buffers the whole thing. Fix that. 491 // TODO(fnk): The stream still buffers the whole thing. Fix that.
490 response_ = stream_->data(); 492 response_ = stream_->data();
491 } 493 }
492 response_complete_ = true; 494 response_complete_ = true;
493 response_headers_complete_ = stream_->headers_decompressed(); 495 response_headers_complete_ = stream_->headers_decompressed();
494 headers_.CopyFrom(stream_->headers()); 496 SpdyUtils::SpdyHeadersToResponseHeaders(stream_->headers(),
497 &headers_);
495 stream_error_ = stream_->stream_error(); 498 stream_error_ = stream_->stream_error();
496 bytes_read_ = stream_->stream_bytes_read() + stream_->header_bytes_read(); 499 bytes_read_ = stream_->stream_bytes_read() + stream_->header_bytes_read();
497 bytes_written_ = 500 bytes_written_ =
498 stream_->stream_bytes_written() + stream_->header_bytes_written(); 501 stream_->stream_bytes_written() + stream_->header_bytes_written();
499 response_header_size_ = headers_.GetSizeForWriteBuffer(); 502 response_header_size_ = headers_.GetSizeForWriteBuffer();
500 response_body_size_ = stream_->data().size(); 503 response_body_size_ = stream_->data().size();
501 stream_ = nullptr; 504 stream_ = nullptr;
502 } 505 }
503 506
504 void QuicTestClient::UseWriter(QuicPacketWriterWrapper* writer) { 507 void QuicTestClient::UseWriter(QuicPacketWriterWrapper* writer) {
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
554 // Set policy for headers and crypto streams. 557 // Set policy for headers and crypto streams.
555 ReliableQuicStreamPeer::SetFecPolicy( 558 ReliableQuicStreamPeer::SetFecPolicy(
556 QuicSessionPeer::GetHeadersStream(client()->session()), fec_policy); 559 QuicSessionPeer::GetHeadersStream(client()->session()), fec_policy);
557 ReliableQuicStreamPeer::SetFecPolicy(client()->session()->GetCryptoStream(), 560 ReliableQuicStreamPeer::SetFecPolicy(client()->session()->GetCryptoStream(),
558 fec_policy); 561 fec_policy);
559 } 562 }
560 563
561 } // namespace test 564 } // namespace test
562 } // namespace tools 565 } // namespace tools
563 } // namespace net 566 } // namespace net
OLDNEW
« no previous file with comments | « net/tools/quic/test_tools/quic_test_client.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698