summaryrefslogtreecommitdiffstats
path: root/net/spdy/spdy_http_stream.h
diff options
context:
space:
mode:
authorakalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-23 16:41:38 +0000
committerakalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-23 16:41:38 +0000
commitaa19cfca991c78d1322f25aef3d62f48bc519f9f (patch)
treea9bcfec0de6b561d56d8c44d647d9a26e2548aa3 /net/spdy/spdy_http_stream.h
parent595ec5160ffd04c3afcdacea05ef054faf49e5e6 (diff)
downloadchromium_src-aa19cfca991c78d1322f25aef3d62f48bc519f9f.zip
chromium_src-aa19cfca991c78d1322f25aef3d62f48bc519f9f.tar.gz
chromium_src-aa19cfca991c78d1322f25aef3d62f48bc519f9f.tar.bz2
[SPDY] Change SpdyStream::QueueStreamData() To SendStreamData()
Change its semantics so that it holds a reference to the passed-in data and calls back to the delegate only when all the data has been sent. Fix bug where flow control wouldn't work for non-HTTP streams. Now it just queues up the next data frame (which must exist, since it must have been trying to send something when it got stalled). Remove now-redundant bytes_sent parameters from SpdyStream::Delegate methods. Remove now-redundant DrainableIOBuffer member variable in SpdyHttpStream. Remove now-redundant logic in SpdyProxyClientSocket to split up data to send into frames. Add SpdyStream tests for sending large blobs of data. Enable bidirectional flow control tests for SpdyStream. BUG=242288 Review URL: https://chromiumcodereview.appspot.com/15740018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201828 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/spdy/spdy_http_stream.h')
-rw-r--r--net/spdy/spdy_http_stream.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/net/spdy/spdy_http_stream.h b/net/spdy/spdy_http_stream.h
index 5f405d3..1fdc3cb 100644
--- a/net/spdy/spdy_http_stream.h
+++ b/net/spdy/spdy_http_stream.h
@@ -86,13 +86,13 @@ class NET_EXPORT_PRIVATE SpdyHttpStream : public SpdyStream::Delegate,
// SpdyStream::Delegate implementation.
virtual SpdySendStatus OnSendHeadersComplete() OVERRIDE;
virtual void OnSendBody() OVERRIDE;
- virtual SpdySendStatus OnSendBodyComplete(size_t bytes_sent) OVERRIDE;
+ virtual SpdySendStatus OnSendBodyComplete() OVERRIDE;
virtual int OnResponseReceived(const SpdyHeaderBlock& response,
base::Time response_time,
int status) OVERRIDE;
virtual void OnHeadersSent() OVERRIDE;
virtual int OnDataReceived(scoped_ptr<SpdyBuffer> buffer) OVERRIDE;
- virtual void OnDataSent(size_t bytes_sent) OVERRIDE;
+ virtual void OnDataSent() OVERRIDE;
virtual void OnClose(int status) OVERRIDE;
private:
@@ -157,8 +157,7 @@ class NET_EXPORT_PRIVATE SpdyHttpStream : public SpdyStream::Delegate,
// Temporary buffer used to read the request body from UploadDataStream.
scoped_refptr<IOBufferWithSize> raw_request_body_buf_;
- // Wraps raw_request_body_buf_ to read the remaining data progressively.
- scoped_refptr<DrainableIOBuffer> request_body_buf_;
+ int raw_request_body_buf_size_;
// Is there a scheduled read callback pending.
bool buffered_read_callback_pending_;