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

Unified Diff: net/quic/quic_http_stream.h

Issue 992733002: Remove //net (except for Android test stuff) and sdch (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_headers_stream_test.cc ('k') | net/quic/quic_http_stream.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_http_stream.h
diff --git a/net/quic/quic_http_stream.h b/net/quic/quic_http_stream.h
deleted file mode 100644
index 81d4be91bc4d2ddd365136e4ab94b6471b43233d..0000000000000000000000000000000000000000
--- a/net/quic/quic_http_stream.h
+++ /dev/null
@@ -1,171 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef NET_QUIC_QUIC_HTTP_STREAM_H_
-#define NET_QUIC_QUIC_HTTP_STREAM_H_
-
-#include <list>
-
-#include "base/memory/weak_ptr.h"
-#include "net/base/io_buffer.h"
-#include "net/http/http_stream.h"
-#include "net/quic/quic_client_session.h"
-#include "net/quic/quic_reliable_client_stream.h"
-
-namespace net {
-
-namespace test {
-class QuicHttpStreamPeer;
-} // namespace test
-
-// The QuicHttpStream is a QUIC-specific HttpStream subclass. It holds a
-// non-owning pointer to a QuicReliableClientStream which it uses to
-// send and receive data.
-class NET_EXPORT_PRIVATE QuicHttpStream :
- public QuicClientSession::Observer,
- public QuicReliableClientStream::Delegate,
- public HttpStream {
- public:
- explicit QuicHttpStream(const base::WeakPtr<QuicClientSession>& session);
-
- ~QuicHttpStream() override;
-
- // HttpStream implementation.
- int InitializeStream(const HttpRequestInfo* request_info,
- RequestPriority priority,
- const BoundNetLog& net_log,
- const CompletionCallback& callback) override;
- int SendRequest(const HttpRequestHeaders& request_headers,
- HttpResponseInfo* response,
- const CompletionCallback& callback) override;
- UploadProgress GetUploadProgress() const override;
- int ReadResponseHeaders(const CompletionCallback& callback) override;
- int ReadResponseBody(IOBuffer* buf,
- int buf_len,
- const CompletionCallback& callback) override;
- void Close(bool not_reusable) override;
- HttpStream* RenewStreamForAuth() override;
- bool IsResponseBodyComplete() const override;
- bool CanFindEndOfResponse() const override;
- bool IsConnectionReused() const override;
- void SetConnectionReused() override;
- bool IsConnectionReusable() const override;
- int64 GetTotalReceivedBytes() const override;
- bool GetLoadTimingInfo(LoadTimingInfo* load_timing_info) const override;
- void GetSSLInfo(SSLInfo* ssl_info) override;
- void GetSSLCertRequestInfo(SSLCertRequestInfo* cert_request_info) override;
- bool IsSpdyHttpStream() const override;
- void Drain(HttpNetworkSession* session) override;
- void SetPriority(RequestPriority priority) override;
-
- // QuicReliableClientStream::Delegate implementation
- int OnDataReceived(const char* data, int length) override;
- void OnClose(QuicErrorCode error) override;
- void OnError(int error) override;
- bool HasSendHeadersComplete() override;
-
- // QuicClientSession::Observer implementation
- void OnCryptoHandshakeConfirmed() override;
- void OnSessionClosed(int error) override;
-
- private:
- friend class test::QuicHttpStreamPeer;
-
- enum State {
- STATE_NONE,
- STATE_SEND_HEADERS,
- STATE_SEND_HEADERS_COMPLETE,
- STATE_READ_REQUEST_BODY,
- STATE_READ_REQUEST_BODY_COMPLETE,
- STATE_SEND_BODY,
- STATE_SEND_BODY_COMPLETE,
- STATE_OPEN,
- };
-
- void OnStreamReady(int rv);
- void OnIOComplete(int rv);
- void DoCallback(int rv);
-
- int DoLoop(int);
- int DoSendHeaders();
- int DoSendHeadersComplete(int rv);
- int DoReadRequestBody();
- int DoReadRequestBodyComplete(int rv);
- int DoSendBody();
- int DoSendBodyComplete(int rv);
- int DoReadResponseHeaders();
- int DoReadResponseHeadersComplete(int rv);
-
- int ParseResponseHeaders();
-
- void BufferResponseBody(const char* data, int length);
-
- State next_state_;
-
- base::WeakPtr<QuicClientSession> session_;
- int session_error_; // Error code from the connection shutdown.
- bool was_handshake_confirmed_; // True if the crypto handshake succeeded.
- QuicClientSession::StreamRequest stream_request_;
- QuicReliableClientStream* stream_; // Non-owning.
-
- // The following three fields are all owned by the caller and must
- // outlive this object, according to the HttpStream contract.
-
- // The request to send.
- const HttpRequestInfo* request_info_;
- // The request body to send, if any, owned by the caller.
- UploadDataStream* request_body_stream_;
- // Time the request was issued.
- base::Time request_time_;
- // The priority of the request.
- RequestPriority priority_;
- // |response_info_| is the HTTP response data object which is filled in
- // when a the response headers are read. It is not owned by this stream.
- HttpResponseInfo* response_info_;
- // Because response data is buffered, also buffer the response status if the
- // stream is explicitly closed via OnError or OnClose with an error.
- // Once all buffered data has been returned, this will be used as the final
- // response.
- int response_status_;
-
- // Serialized request headers.
- SpdyHeaderBlock request_headers_;
-
- bool response_headers_received_;
-
- // Serialized HTTP request.
- std::string request_;
-
- // Buffer into which response header data is read.
- scoped_refptr<GrowableIOBuffer> read_buf_;
-
- // We buffer the response body as it arrives asynchronously from the stream.
- // TODO(rch): This is infinite buffering, which is bad.
- std::list<scoped_refptr<IOBufferWithSize> > response_body_;
-
- // Number of bytes received when the stream was closed.
- int64 closed_stream_received_bytes_;
-
- // The caller's callback to be used for asynchronous operations.
- CompletionCallback callback_;
-
- // Caller provided buffer for the ReadResponseBody() response.
- scoped_refptr<IOBuffer> user_buffer_;
- int user_buffer_len_;
-
- // 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_;
-
- BoundNetLog stream_net_log_;
-
- base::WeakPtrFactory<QuicHttpStream> weak_factory_;
-
- DISALLOW_COPY_AND_ASSIGN(QuicHttpStream);
-};
-
-} // namespace net
-
-#endif // NET_QUIC_QUIC_HTTP_STREAM_H_
« no previous file with comments | « net/quic/quic_headers_stream_test.cc ('k') | net/quic/quic_http_stream.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698