Chromium Code Reviews| Index: content/renderer/p2p/p2p_transport_impl.cc |
| diff --git a/content/renderer/p2p/p2p_transport_impl.cc b/content/renderer/p2p/p2p_transport_impl.cc |
| index 02f0a9d518985fe38c2bd640369a948f0bdb11f2..ed37c34826939aeaa15747af6289ddae3acecd17 100644 |
| --- a/content/renderer/p2p/p2p_transport_impl.cc |
| +++ b/content/renderer/p2p/p2p_transport_impl.cc |
| @@ -6,6 +6,7 @@ |
| #include "content/renderer/p2p/ipc_network_manager.h" |
| #include "content/renderer/p2p/ipc_socket_factory.h" |
| +#include "content/renderer/p2p/port_allocator.h" |
| #include "content/renderer/render_view.h" |
| #include "jingle/glue/channel_socket_adapter.h" |
| #include "jingle/glue/pseudotcp_adapter.h" |
| @@ -20,7 +21,8 @@ namespace content { |
| P2PTransportImpl::P2PTransportImpl( |
| talk_base::NetworkManager* network_manager, |
| talk_base::PacketSocketFactory* socket_factory) |
| - : event_handler_(NULL), |
| + : socket_dispatcher_(NULL), |
| + event_handler_(NULL), |
| state_(STATE_NONE), |
| network_manager_(network_manager), |
| socket_factory_(socket_factory), |
| @@ -29,12 +31,14 @@ P2PTransportImpl::P2PTransportImpl( |
| } |
| P2PTransportImpl::P2PTransportImpl(P2PSocketDispatcher* socket_dispatcher) |
| - : event_handler_(NULL), |
| + : socket_dispatcher_(socket_dispatcher), |
| + event_handler_(NULL), |
| state_(STATE_NONE), |
| network_manager_(new IpcNetworkManager(socket_dispatcher)), |
| socket_factory_(new IpcPacketSocketFactory(socket_dispatcher)), |
| ALLOW_THIS_IN_INITIALIZER_LIST(connect_callback_( |
| this, &P2PTransportImpl::OnTcpConnected)) { |
| + DCHECK(socket_dispatcher); |
| } |
| P2PTransportImpl::~P2PTransportImpl() { |
| @@ -53,9 +57,15 @@ bool P2PTransportImpl::Init(const std::string& name, |
| name_ = name; |
| event_handler_ = event_handler; |
| - // TODO(sergeyu): Use STUN/Relay settings from |config|. |
| - allocator_.reset(new cricket::BasicPortAllocator( |
| - network_manager_.get(), socket_factory_.get())); |
| + if (socket_dispatcher_) { |
| + allocator_.reset(new P2PPortAllocator( |
| + socket_dispatcher_, network_manager_.get(), |
| + socket_factory_.get(), config)); |
| + } else { |
| + // Use raw basic port allocator is used for tests. |
|
Wez
2011/08/29 18:01:57
This comment needs rewording, although it could ju
Sergey Ulanov
2011/08/29 22:13:39
I think it's useful to have this comment here.
|
| + allocator_.reset(new cricket::BasicPortAllocator( |
| + network_manager_.get(), socket_factory_.get())); |
| + } |
| DCHECK(!channel_.get()); |
| channel_.reset(new cricket::P2PTransportChannel( |