Index: remoting/protocol/ice_transport_factory.h |
diff --git a/remoting/protocol/ice_transport_factory.h b/remoting/protocol/ice_transport_factory.h |
index 52a7f14f478873dd903fa2f8794644642c90a7d4..63efe70ac51abaebcbe7fe3c262ba41e13b5921b 100644 |
--- a/remoting/protocol/ice_transport_factory.h |
+++ b/remoting/protocol/ice_transport_factory.h |
@@ -5,9 +5,12 @@ |
#ifndef REMOTING_PROTOCOL_ICE_TRANSPORT_FACTORY_H_ |
#define REMOTING_PROTOCOL_ICE_TRANSPORT_FACTORY_H_ |
+#include <list> |
+ |
#include "base/macros.h" |
#include "remoting/protocol/network_settings.h" |
#include "remoting/protocol/transport.h" |
+#include "remoting/signaling/jingle_info_request.h" |
namespace cricket { |
class HttpPortAllocatorBase; |
@@ -19,8 +22,6 @@ class SignalStrategy; |
namespace protocol { |
-class LibjingleTransportFactory; |
- |
class IceTransportFactory : public TransportFactory { |
public: |
IceTransportFactory( |
@@ -31,11 +32,25 @@ class IceTransportFactory : public TransportFactory { |
~IceTransportFactory() override; |
// TransportFactory interface. |
- void PrepareTokens() override; |
scoped_ptr<TransportSession> CreateTransportSession() override; |
private: |
- scoped_ptr<LibjingleTransportFactory> libjingle_transport_factory_; |
+ void EnsureFreshJingleInfo(); |
+ void OnJingleInfo(const std::string& relay_token, |
+ const std::vector<std::string>& relay_hosts, |
+ const std::vector<rtc::SocketAddress>& stun_hosts); |
+ |
+ SignalStrategy* signal_strategy_; |
+ scoped_ptr<cricket::HttpPortAllocatorBase> port_allocator_; |
+ NetworkSettings network_settings_; |
+ TransportRole role_; |
+ |
+ base::TimeTicks last_jingle_info_update_time_; |
+ scoped_ptr<JingleInfoRequest> jingle_info_request_; |
+ |
+ // When there is an active |jingle_info_request_| stores list of callbacks to |
+ // be called once the |jingle_info_request_| is finished. |
+ std::list<base::Closure> on_jingle_info_callbacks_; |
DISALLOW_COPY_AND_ASSIGN(IceTransportFactory); |
}; |