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

Unified Diff: net/quic/quic_packet_generator.cc

Issue 17518002: Add logging to the QUIC write path. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Missed one Created 7 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_packet_generator.h ('k') | net/quic/quic_packet_generator_test.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_packet_generator.cc
diff --git a/net/quic/quic_packet_generator.cc b/net/quic/quic_packet_generator.cc
index 3d2a6302913fc1ae73c3236bdd6c4d8cdf12f835..e6aeac76f07ba4b11396928edd5cf25f914c08fb 100644
--- a/net/quic/quic_packet_generator.cc
+++ b/net/quic/quic_packet_generator.cc
@@ -13,8 +13,10 @@ using base::StringPiece;
namespace net {
QuicPacketGenerator::QuicPacketGenerator(DelegateInterface* delegate,
+ DebugDelegateInterface* debug_delegate,
QuicPacketCreator* creator)
: delegate_(delegate),
+ debug_delegate_(debug_delegate),
packet_creator_(creator),
should_flush_(true),
should_send_ack_(false),
@@ -77,7 +79,7 @@ QuicConsumedData QuicPacketGenerator::ConsumeData(QuicStreamId id,
QuicFrame frame;
size_t bytes_consumed = packet_creator_->CreateStreamFrame(
id, data, offset + total_bytes_consumed, fin, &frame);
- bool success = packet_creator_->AddSavedFrame(frame);
+ bool success = AddFrame(frame);
DCHECK(success);
total_bytes_consumed += bytes_consumed;
@@ -158,7 +160,7 @@ bool QuicPacketGenerator::HasPendingFrames() const {
bool QuicPacketGenerator::AddNextPendingFrame() {
if (should_send_ack_) {
pending_ack_frame_.reset(delegate_->CreateAckFrame());
- if (!packet_creator_->AddSavedFrame(QuicFrame(pending_ack_frame_.get()))) {
+ if (!AddFrame(QuicFrame(pending_ack_frame_.get()))) {
// packet was full
return false;
}
@@ -168,8 +170,7 @@ bool QuicPacketGenerator::AddNextPendingFrame() {
if (should_send_feedback_) {
pending_feedback_frame_.reset(delegate_->CreateFeedbackFrame());
- if (!packet_creator_->AddSavedFrame(QuicFrame(
- pending_feedback_frame_.get()))) {
+ if (!AddFrame(QuicFrame(pending_feedback_frame_.get()))) {
// packet was full
return false;
}
@@ -178,7 +179,7 @@ bool QuicPacketGenerator::AddNextPendingFrame() {
}
DCHECK(!queued_control_frames_.empty());
- if (!packet_creator_->AddSavedFrame(queued_control_frames_.back())) {
+ if (!AddFrame(queued_control_frames_.back())) {
// packet was full
return false;
}
@@ -186,6 +187,14 @@ bool QuicPacketGenerator::AddNextPendingFrame() {
return true;
}
+bool QuicPacketGenerator::AddFrame(const QuicFrame& frame) {
+ bool success = packet_creator_->AddSavedFrame(frame);
+ if (success && debug_delegate_) {
+ debug_delegate_->OnFrameAddedToPacket(frame);
+ }
+ return success;
+}
+
void QuicPacketGenerator::SerializeAndSendPacket() {
SerializedPacket serialized_packet = packet_creator_->SerializePacket();
DCHECK(serialized_packet.packet);
« no previous file with comments | « net/quic/quic_packet_generator.h ('k') | net/quic/quic_packet_generator_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698