quic_session_peer.h revision 116680a4aac90f2aa7413d9095a592090648e557
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
11namespace net {
12
13class QuicCryptoStream;
14class QuicDataStream;
15class QuicHeadersStream;
16class QuicSession;
17
18namespace test {
19
20class 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
32 private:
33  DISALLOW_COPY_AND_ASSIGN(QuicSessionPeer);
34};
35
36}  // namespace test
37}  // namespace net
38
39#endif  // NET_QUIC_TEST_TOOLS_QUIC_SESSION_PEER_H_
40