1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_ 6 #define NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_ 7 8 #include "net/quic/quic_protocol.h" 9 #include "net/quic/quic_write_blocked_list.h" 10 11 namespace net { 12 13 class QuicCryptoStream; 14 class QuicDataStream; 15 class QuicHeadersStream; 16 class QuicSession; 17 18 namespace test { 19 20 class QuicSessionPeer { 21 public: 22 static void SetNextStreamId(QuicSession* session, QuicStreamId id); 23 static void SetMaxOpenStreams(QuicSession* session, uint32 max_streams); 24 static QuicCryptoStream* GetCryptoStream(QuicSession* session); 25 static QuicHeadersStream* GetHeadersStream(QuicSession* session); 26 static void SetHeadersStream(QuicSession* session, 27 QuicHeadersStream* headers_stream); 28 static QuicWriteBlockedList* GetWriteBlockedStreams(QuicSession* session); 29 static QuicDataStream* GetIncomingDataStream(QuicSession* session, 30 QuicStreamId stream_id); 31 static std::map<QuicStreamId, QuicStreamOffset>& 32 GetLocallyClosedStreamsHighestOffset(QuicSession* session); 33 34 private: 35 DISALLOW_COPY_AND_ASSIGN(QuicSessionPeer); 36 }; 37 38 } // namespace test 39 } // namespace net 40 41 #endif // NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_ 42