summaryrefslogtreecommitdiffstats
path: root/net/spdy/spdy_stream.h
diff options
context:
space:
mode:
authoragayev@chromium.org <agayev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-20 14:16:27 +0000
committeragayev@chromium.org <agayev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-20 14:16:27 +0000
commit5af3c573076a8f04c285d6a0c40237462375e7c5 (patch)
tree3161f03d9e617a1499a83c2413faa435682c10a7 /net/spdy/spdy_stream.h
parent1442b29a275b076203b5e0a78206fe3feda3b739 (diff)
downloadchromium_src-5af3c573076a8f04c285d6a0c40237462375e7c5.zip
chromium_src-5af3c573076a8f04c285d6a0c40237462375e7c5.tar.gz
chromium_src-5af3c573076a8f04c285d6a0c40237462375e7c5.tar.bz2
Initial SPDY flow control support
BUG=48100 TEST=net_unittests --gtest_filter="SpdyProtocolTest.ControlFrameStructs:SpdyNetworkTransactionTest.WindowSizeChange:SpdyNetworkTransactionTest.WindowSizeOverflow" Contributed by: agayev@google.com Review URL: http://codereview.chromium.org/2805083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53039 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy/spdy_stream.h')
-rw-r--r--net/spdy/spdy_stream.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/net/spdy/spdy_stream.h b/net/spdy/spdy_stream.h
index bcb38c7..13a6644 100644
--- a/net/spdy/spdy_stream.h
+++ b/net/spdy/spdy_stream.h
@@ -102,6 +102,14 @@ class SpdyStream : public base::RefCounted<SpdyStream> {
int priority() const { return priority_; }
void set_priority(int priority) { priority_ = priority; }
+ int window_size() const { return window_size_; }
+ void set_window_size(int window_size) { window_size_ = window_size; }
+
+ // Updates |window_size_| with delta extracted from a WINDOW_UPDATE
+ // frame; sends a RST_STREAM if delta overflows |window_size_| and
+ // removes the stream from the session.
+ void UpdateWindowSize(int delta_window_size);
+
const BoundNetLog& net_log() const { return net_log_; }
void set_net_log(const BoundNetLog& log) { net_log_ = log; }
@@ -200,6 +208,7 @@ class SpdyStream : public base::RefCounted<SpdyStream> {
spdy::SpdyStreamId stream_id_;
std::string path_;
int priority_;
+ int window_size_;
const bool pushed_;
ScopedBandwidthMetrics metrics_;
bool syn_reply_received_;