| Index: net/quic/quic_session.h
|
| diff --git a/net/quic/quic_session.h b/net/quic/quic_session.h
|
| index 9d2d2b7cf5ed8b287e79c0e294cf5e3b90624695..eff0546d13f36d062a7f8417fd0ba90f813e925d 100644
|
| --- a/net/quic/quic_session.h
|
| +++ b/net/quic/quic_session.h
|
| @@ -17,6 +17,8 @@
|
| #include "net/quic/quic_crypto_stream.h"
|
| #include "net/quic/quic_packet_creator.h"
|
| #include "net/quic/quic_protocol.h"
|
| +#include "net/quic/quic_spdy_compressor.h"
|
| +#include "net/quic/quic_spdy_decompressor.h"
|
| #include "net/quic/reliable_quic_stream.h"
|
|
|
| namespace net {
|
| @@ -120,6 +122,11 @@ class NET_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface {
|
|
|
| void MarkWriteBlocked(QuicStreamId id);
|
|
|
| + // Marks that |stream_id| is blocked waiting to decompress the
|
| + // headers identified by |decompression_id|.
|
| + void MarkDecompressionBlocked(QuicHeaderId decompression_id,
|
| + QuicStreamId stream_id);
|
| +
|
| bool goaway_received() const {
|
| return goaway_received_;
|
| }
|
| @@ -128,6 +135,9 @@ class NET_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface {
|
| return goaway_sent_;
|
| }
|
|
|
| + QuicSpdyDecompressor* decompressor() { return &decompressor_; }
|
| + QuicSpdyCompressor* compressor() { return &compressor_; }
|
| +
|
| protected:
|
| // Creates a new stream, owned by the caller, to handle a peer-initiated
|
| // stream. Returns NULL and does error handling if the stream can not be
|
| @@ -182,6 +192,9 @@ class NET_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface {
|
|
|
| std::vector<ReliableQuicStream*> closed_streams_;
|
|
|
| + QuicSpdyDecompressor decompressor_;
|
| + QuicSpdyCompressor compressor_;
|
| +
|
| // Returns the maximum number of streams this connection can open.
|
| const size_t max_open_streams_;
|
|
|
| @@ -197,6 +210,10 @@ class NET_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface {
|
| // A list of streams which need to write more data.
|
| BlockedList<QuicStreamId> write_blocked_streams_;
|
|
|
| + // A map of headers waiting to be compressed, and the streams
|
| + // they are associated with.
|
| + map<uint32, QuicStreamId> decompression_blocked_streams_;
|
| +
|
| QuicStreamId largest_peer_created_stream_id_;
|
|
|
| // Whether a GoAway has been received.
|
|
|