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

Side by Side Diff: net/tools/quic/quic_spdy_client_stream.cc

Issue 2462823002: Deletes dead code. (Closed)
Patch Set: Updated patchset dependency Created 4 years, 1 month 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
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/quic_spdy_client_stream.h" 5 #include "net/tools/quic/quic_spdy_client_stream.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
(...skipping 24 matching lines...) Expand all
35 35
36 void QuicSpdyClientStream::OnStreamFrame(const QuicStreamFrame& frame) { 36 void QuicSpdyClientStream::OnStreamFrame(const QuicStreamFrame& frame) {
37 if (!allow_bidirectional_data() && !write_side_closed()) { 37 if (!allow_bidirectional_data() && !write_side_closed()) {
38 DVLOG(1) << "Got a response before the request was complete. " 38 DVLOG(1) << "Got a response before the request was complete. "
39 << "Aborting request."; 39 << "Aborting request.";
40 CloseWriteSide(); 40 CloseWriteSide();
41 } 41 }
42 QuicSpdyStream::OnStreamFrame(frame); 42 QuicSpdyStream::OnStreamFrame(frame);
43 } 43 }
44 44
45 void QuicSpdyClientStream::OnInitialHeadersComplete(bool fin,
46 size_t frame_len) {
47 QuicSpdyStream::OnInitialHeadersComplete(fin, frame_len);
48
49 DCHECK(headers_decompressed());
50 header_bytes_read_ += frame_len;
51 if (!SpdyUtils::ParseHeaders(decompressed_headers().data(),
52 decompressed_headers().length(),
53 &content_length_, &response_headers_)) {
54 DLOG(ERROR) << "Failed to parse headers: " << decompressed_headers();
55 Reset(QUIC_BAD_APPLICATION_PAYLOAD);
56 return;
57 }
58
59 if (!ParseHeaderStatusCode(response_headers_, &response_code_)) {
60 DLOG(ERROR) << "Received invalid response code: "
61 << response_headers_[":status"].as_string();
62 Reset(QUIC_BAD_APPLICATION_PAYLOAD);
63 return;
64 }
65
66 MarkHeadersConsumed(decompressed_headers().length());
67 DVLOG(1) << "headers complete for stream " << id();
68
69 session_->OnInitialHeadersComplete(id(), response_headers_);
70 }
71
72 void QuicSpdyClientStream::OnInitialHeadersComplete( 45 void QuicSpdyClientStream::OnInitialHeadersComplete(
73 bool fin, 46 bool fin,
74 size_t frame_len, 47 size_t frame_len,
75 const QuicHeaderList& header_list) { 48 const QuicHeaderList& header_list) {
76 QuicSpdyStream::OnInitialHeadersComplete(fin, frame_len, header_list); 49 QuicSpdyStream::OnInitialHeadersComplete(fin, frame_len, header_list);
77 50
78 DCHECK(headers_decompressed()); 51 DCHECK(headers_decompressed());
79 header_bytes_read_ += frame_len; 52 header_bytes_read_ += frame_len;
80 if (!SpdyUtils::CopyAndValidateHeaders(header_list, &content_length_, 53 if (!SpdyUtils::CopyAndValidateHeaders(header_list, &content_length_,
81 &response_headers_)) { 54 &response_headers_)) {
(...skipping 16 matching lines...) Expand all
98 } 71 }
99 72
100 void QuicSpdyClientStream::OnTrailingHeadersComplete( 73 void QuicSpdyClientStream::OnTrailingHeadersComplete(
101 bool fin, 74 bool fin,
102 size_t frame_len, 75 size_t frame_len,
103 const QuicHeaderList& header_list) { 76 const QuicHeaderList& header_list) {
104 QuicSpdyStream::OnTrailingHeadersComplete(fin, frame_len, header_list); 77 QuicSpdyStream::OnTrailingHeadersComplete(fin, frame_len, header_list);
105 MarkTrailersConsumed(); 78 MarkTrailersConsumed();
106 } 79 }
107 80
108 void QuicSpdyClientStream::OnPromiseHeadersComplete(QuicStreamId promised_id,
109 size_t frame_len) {
110 header_bytes_read_ += frame_len;
111 int64_t content_length = -1;
112 SpdyHeaderBlock promise_headers;
113 if (!SpdyUtils::ParseHeaders(decompressed_headers().data(),
114 decompressed_headers().length(), &content_length,
115 &promise_headers)) {
116 DLOG(ERROR) << "Failed to parse promise headers: "
117 << decompressed_headers();
118 Reset(QUIC_BAD_APPLICATION_PAYLOAD);
119 return;
120 }
121 MarkHeadersConsumed(decompressed_headers().length());
122
123 session_->HandlePromised(id(), promised_id, promise_headers);
124 if (visitor() != nullptr) {
125 visitor()->OnPromiseHeadersComplete(promised_id, frame_len);
126 }
127 }
128
129 void QuicSpdyClientStream::OnPromiseHeaderList( 81 void QuicSpdyClientStream::OnPromiseHeaderList(
130 QuicStreamId promised_id, 82 QuicStreamId promised_id,
131 size_t frame_len, 83 size_t frame_len,
132 const QuicHeaderList& header_list) { 84 const QuicHeaderList& header_list) {
133 header_bytes_read_ += frame_len; 85 header_bytes_read_ += frame_len;
134 int64_t content_length = -1; 86 int64_t content_length = -1;
135 SpdyHeaderBlock promise_headers; 87 SpdyHeaderBlock promise_headers;
136 if (!SpdyUtils::CopyAndValidateHeaders(header_list, &content_length, 88 if (!SpdyUtils::CopyAndValidateHeaders(header_list, &content_length,
137 &promise_headers)) { 89 &promise_headers)) {
138 DLOG(ERROR) << "Failed to parse promise headers: " 90 DLOG(ERROR) << "Failed to parse promise headers: "
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 bytes_sent += header_bytes_written_; 141 bytes_sent += header_bytes_written_;
190 142
191 if (!body.empty()) { 143 if (!body.empty()) {
192 WriteOrBufferData(body, fin, nullptr); 144 WriteOrBufferData(body, fin, nullptr);
193 } 145 }
194 146
195 return bytes_sent; 147 return bytes_sent;
196 } 148 }
197 149
198 } // namespace net 150 } // namespace net
OLDNEW
« no previous file with comments | « net/tools/quic/quic_spdy_client_stream.h ('k') | net/tools/quic/quic_spdy_client_stream_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698