11e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 21e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 31e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// found in the LICENSE file. 41e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 51e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)#include "net/tools/quic/test_tools/quic_dispatcher_peer.h" 61e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 71e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)#include "net/tools/quic/quic_dispatcher.h" 85d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "net/tools/quic/quic_packet_writer_wrapper.h" 91e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 101e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)namespace net { 111e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)namespace tools { 121e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)namespace test { 131e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 141e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// static 151e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)void QuicDispatcherPeer::SetTimeWaitListManager( 161e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) QuicDispatcher* dispatcher, 171e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) QuicTimeWaitListManager* time_wait_list_manager) { 181e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) dispatcher->time_wait_list_manager_.reset(time_wait_list_manager); 191e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} 201e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 211e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// static 221e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)void QuicDispatcherPeer::UseWriter(QuicDispatcher* dispatcher, 235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) QuicPacketWriterWrapper* writer) { 245c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu writer->set_writer(dispatcher->writer_.release()); 255c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu dispatcher->writer_.reset(writer); 261e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} 271e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 281e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// static 295c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo LiuQuicPacketWriter* QuicDispatcherPeer::GetWriter(QuicDispatcher* dispatcher) { 301e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) return dispatcher->writer_.get(); 311e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} 321e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 331e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// static 341e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)QuicEpollConnectionHelper* QuicDispatcherPeer::GetHelper( 351e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) QuicDispatcher* dispatcher) { 361e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) return dispatcher->helper_.get(); 371e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} 381e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 39e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch// static 40e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen MurdochQuicConnection* QuicDispatcherPeer::CreateQuicConnection( 41e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch QuicDispatcher* dispatcher, 42e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch QuicConnectionId connection_id, 43e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch const IPEndPoint& server, 44cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) const IPEndPoint& client) { 45e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch return dispatcher->CreateQuicConnection(connection_id, 46e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch server, 47cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) client); 48e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch} 49e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch 501e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} // namespace test 511e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} // namespace tools 521e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)} // namespace net 53