OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 // The base class for streams which deliver data to/from an application. | 5 // The base class for streams which deliver data to/from an application. |
6 // In each direction, the data on such a stream first contains compressed | 6 // In each direction, the data on such a stream first contains compressed |
7 // headers then body data. | 7 // headers then body data. |
8 | 8 |
9 #ifndef NET_QUIC_QUIC_SPDY_STREAM_H_ | 9 #ifndef NET_QUIC_QUIC_SPDY_STREAM_H_ |
10 #define NET_QUIC_QUIC_SPDY_STREAM_H_ | 10 #define NET_QUIC_QUIC_SPDY_STREAM_H_ |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 protected: | 47 protected: |
48 virtual ~Visitor() {} | 48 virtual ~Visitor() {} |
49 | 49 |
50 private: | 50 private: |
51 DISALLOW_COPY_AND_ASSIGN(Visitor); | 51 DISALLOW_COPY_AND_ASSIGN(Visitor); |
52 }; | 52 }; |
53 | 53 |
54 QuicSpdyStream(QuicStreamId id, QuicSpdySession* spdy_session); | 54 QuicSpdyStream(QuicStreamId id, QuicSpdySession* spdy_session); |
55 ~QuicSpdyStream() override; | 55 ~QuicSpdyStream() override; |
56 | 56 |
| 57 // Override the base class to send QUIC_STREAM_NO_ERROR to the peer |
| 58 // when the stream has not received all the data. |
| 59 void CloseWriteSide() override; |
| 60 |
57 // ReliableQuicStream implementation | 61 // ReliableQuicStream implementation |
58 void OnClose() override; | 62 void OnClose() override; |
59 | 63 |
60 // By default, this is the same as priority(), however it allows streams | 64 // By default, this is the same as priority(), however it allows streams |
61 // to temporarily alter effective priority. For example if a SPDY stream has | 65 // to temporarily alter effective priority. For example if a SPDY stream has |
62 // compressed but not written headers it can write the headers with a higher | 66 // compressed but not written headers it can write the headers with a higher |
63 // priority. | 67 // priority. |
64 QuicPriority EffectivePriority() const override; | 68 QuicPriority EffectivePriority() const override; |
65 | 69 |
66 // Called by the session when decompressed headers data is received | 70 // Called by the session when decompressed headers data is received |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 // Contains a copy of the decompressed headers until they are consumed | 139 // Contains a copy of the decompressed headers until they are consumed |
136 // via ProcessData or Readv. | 140 // via ProcessData or Readv. |
137 std::string decompressed_headers_; | 141 std::string decompressed_headers_; |
138 | 142 |
139 DISALLOW_COPY_AND_ASSIGN(QuicSpdyStream); | 143 DISALLOW_COPY_AND_ASSIGN(QuicSpdyStream); |
140 }; | 144 }; |
141 | 145 |
142 } // namespace net | 146 } // namespace net |
143 | 147 |
144 #endif // NET_QUIC_QUIC_SPDY_STREAM_H_ | 148 #endif // NET_QUIC_QUIC_SPDY_STREAM_H_ |
OLD | NEW |