Index: remoting/protocol/ice_connection_to_client.h |
diff --git a/remoting/protocol/ice_connection_to_client.h b/remoting/protocol/ice_connection_to_client.h |
index 72d76912e34476dd91474e366a4748a2a9d03a7a..dc8856aad8cc5ba053454db8f6c34486d8451094 100644 |
--- a/remoting/protocol/ice_connection_to_client.h |
+++ b/remoting/protocol/ice_connection_to_client.h |
@@ -12,6 +12,7 @@ |
#include "base/threading/thread_checker.h" |
#include "remoting/protocol/channel_dispatcher_base.h" |
#include "remoting/protocol/connection_to_client.h" |
+#include "remoting/protocol/ice_transport.h" |
#include "remoting/protocol/session.h" |
namespace remoting { |
@@ -29,10 +30,12 @@ class VideoFramePump; |
// stubs. |
class IceConnectionToClient : public ConnectionToClient, |
public Session::EventHandler, |
+ public IceTransport::EventHandler, |
public ChannelDispatcherBase::EventHandler { |
public: |
IceConnectionToClient( |
scoped_ptr<Session> session, |
+ scoped_refptr<TransportContext> transport_context, |
scoped_refptr<base::SingleThreadTaskRunner> video_encode_task_runner); |
~IceConnectionToClient() override; |
@@ -52,8 +55,11 @@ class IceConnectionToClient : public ConnectionToClient, |
// Session::EventHandler interface. |
void OnSessionStateChange(Session::State state) override; |
- void OnSessionRouteChange(const std::string& channel_name, |
- const TransportRoute& route) override; |
+ |
+ // IceTransport::EventHandler interface. |
+ void OnIceTransportRouteChange(const std::string& channel_name, |
+ const TransportRoute& route) override; |
+ void OnIceTransportError(ErrorCode error) override; |
// ChannelDispatcherBase::EventHandler interface. |
void OnChannelInitialized(ChannelDispatcherBase* channel_dispatcher) override; |
@@ -63,9 +69,6 @@ class IceConnectionToClient : public ConnectionToClient, |
private: |
void NotifyIfChannelsReady(); |
- void Close(ErrorCode error); |
- |
- // Stops writing in the channels. |
void CloseChannels(); |
base::ThreadChecker thread_checker_; |
@@ -77,6 +80,8 @@ class IceConnectionToClient : public ConnectionToClient, |
scoped_refptr<base::SingleThreadTaskRunner> video_encode_task_runner_; |
+ IceTransport transport_; |
+ |
scoped_ptr<HostControlDispatcher> control_dispatcher_; |
scoped_ptr<HostEventDispatcher> event_dispatcher_; |
scoped_ptr<HostVideoDispatcher> video_dispatcher_; |