Index: net/quic/reliable_quic_stream.h |
=================================================================== |
--- net/quic/reliable_quic_stream.h (revision 165858) |
+++ net/quic/reliable_quic_stream.h (working copy) |
@@ -1,80 +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. |
-// |
-// The base class for client/server reliable streams. |
- |
-#ifndef NET_QUIC_RELIABLE_QUIC_STREAM_H_ |
-#define NET_QUIC_RELIABLE_QUIC_STREAM_H_ |
- |
-#include "net/quic/quic_stream_sequencer.h" |
- |
-namespace net { |
- |
-class QuicSession; |
- |
-// All this does right now is send data to subclasses via the sequencer. |
-class NET_EXPORT_PRIVATE ReliableQuicStream { |
- public: |
- ReliableQuicStream(QuicStreamId id, |
- QuicSession* session); |
- |
- virtual ~ReliableQuicStream(); |
- |
- bool WillAcceptStreamFrame(const QuicStreamFrame& frame) const; |
- bool OnStreamFrame(const QuicStreamFrame& frame); |
- |
- // Called when we get a stream reset from the client. |
- // The rst will be passed through the sequencer, which will call |
- // TerminateFromPeer when 'offset' bytes have been processed. |
- void OnStreamReset(QuicErrorCode error, QuicStreamOffset ofset); |
- |
- // Called when we get or send a connection close, and should immediately |
- // close the stream. This is not passed through the sequencer, |
- // but is handled immediately. |
- virtual void ConnectionClose(QuicErrorCode error, bool from_peer); |
- |
- // Called by the sequencer, when we should process a stream termination or |
- // stream close from the peer. |
- virtual void TerminateFromPeer(bool half_close); |
- |
- virtual uint32 ProcessData(const char* data, uint32 data_len) = 0; |
- |
- // Called to close the stream from this end. |
- virtual void Close(QuicErrorCode error); |
- |
- // This block of functions wraps the sequencer's functions of the same |
- // name. |
- virtual bool IsHalfClosed(); |
- virtual bool HasBytesToRead(); |
- |
- QuicStreamId id() { return id_; } |
- |
- QuicErrorCode error() { return error_; } |
- |
- protected: |
- virtual int WriteData(base::StringPiece data, bool fin); |
- // Close the read side of the socket. Further frames will not be accepted. |
- virtual void CloseReadSide(); |
- // Close the write side of the socket. Further writes will fail. |
- void CloseWriteSide(); |
- |
- QuicSession* session() { return session_; } |
- |
- private: |
- friend class ReliableQuicStreamPeer; |
- |
- QuicStreamSequencer sequencer_; |
- QuicStreamId id_; |
- QuicStreamOffset offset_; |
- QuicSession* session_; |
- QuicErrorCode error_; |
- // True if the read side is closed and further frames should be rejected. |
- bool read_side_closed_; |
- // True if the write side is closed, and further writes should fail. |
- bool write_side_closed_; |
-}; |
- |
-} // namespace net |
- |
-#endif // NET_QUIC_RELIABLE_QUIC_STREAM_H_ |