Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Side by Side Diff: remoting/protocol/jingle_session_manager.h

Issue 7312013: Minor cleanups in JingleSession and JingleSessionManager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: - Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef REMOTING_PROTOCOL_JINGLE_SESSION_MANAGER_H_ 5 #ifndef REMOTING_PROTOCOL_JINGLE_SESSION_MANAGER_H_
6 #define REMOTING_PROTOCOL_JINGLE_SESSION_MANAGER_H_ 6 #define REMOTING_PROTOCOL_JINGLE_SESSION_MANAGER_H_
7 7
8 #include <list> 8 #include <list>
9 #include <string> 9 #include <string>
10 10
(...skipping 19 matching lines...) Expand all
30 30
31 namespace protocol { 31 namespace protocol {
32 32
33 // This class implements SessionClient for Chromoting sessions. It acts as a 33 // This class implements SessionClient for Chromoting sessions. It acts as a
34 // server that accepts chromoting connections and can also make new connections 34 // server that accepts chromoting connections and can also make new connections
35 // to other hosts. 35 // to other hosts.
36 class JingleSessionManager 36 class JingleSessionManager
37 : public SessionManager, 37 : public SessionManager,
38 public cricket::SessionClient { 38 public cricket::SessionClient {
39 public: 39 public:
40 JingleSessionManager( 40 virtual ~JingleSessionManager();
41
42 static JingleSessionManager* Create();
43 static JingleSessionManager* Create(
Wez 2011/07/06 21:24:25 nit: It's not clear from the name what kinds of ne
Sergey Ulanov 2011/07/06 23:15:01 Done.
41 talk_base::NetworkManager* network_manager, 44 talk_base::NetworkManager* network_manager,
42 talk_base::PacketSocketFactory* socket_factory, 45 talk_base::PacketSocketFactory* socket_factory,
43 PortAllocatorSessionFactory* port_allocator_session_factory); 46 PortAllocatorSessionFactory* port_allocator_session_factory);
44 virtual ~JingleSessionManager();
45 47
46 // SessionManager interface. 48 // SessionManager interface.
47 virtual void Init(const std::string& local_jid, 49 virtual void Init(const std::string& local_jid,
48 SignalStrategy* signal_strategy, 50 SignalStrategy* signal_strategy,
49 IncomingSessionCallback* incoming_session_callback, 51 IncomingSessionCallback* incoming_session_callback,
50 crypto::RSAPrivateKey* private_key, 52 crypto::RSAPrivateKey* private_key,
51 scoped_refptr<net::X509Certificate> certificate) OVERRIDE; 53 scoped_refptr<net::X509Certificate> certificate) OVERRIDE;
52 virtual Session* Connect( 54 virtual Session* Connect(
53 const std::string& host_jid, 55 const std::string& host_jid,
54 const std::string& host_public_key, 56 const std::string& host_public_key,
(...skipping 14 matching lines...) Expand all
69 const cricket::ContentDescription** content, 71 const cricket::ContentDescription** content,
70 cricket::ParseError* error) OVERRIDE; 72 cricket::ParseError* error) OVERRIDE;
71 virtual bool WriteContent(cricket::SignalingProtocol protocol, 73 virtual bool WriteContent(cricket::SignalingProtocol protocol,
72 const cricket::ContentDescription* content, 74 const cricket::ContentDescription* content,
73 buzz::XmlElement** elem, 75 buzz::XmlElement** elem,
74 cricket::WriteError* error) OVERRIDE; 76 cricket::WriteError* error) OVERRIDE;
75 77
76 private: 78 private:
77 friend class JingleSession; 79 friend class JingleSession;
78 80
81 JingleSessionManager(
82 talk_base::NetworkManager* network_manager,
83 talk_base::PacketSocketFactory* socket_factory,
84 PortAllocatorSessionFactory* port_allocator_session_factory);
85
79 // Called by JingleSession when a new connection is 86 // Called by JingleSession when a new connection is
80 // initiated. Returns true if session is accepted. 87 // initiated. Returns true if session is accepted.
81 bool AcceptConnection(JingleSession* jingle_session, 88 bool AcceptConnection(JingleSession* jingle_session,
82 cricket::Session* cricket_session); 89 cricket::Session* cricket_session);
83 90
84 // Called by JingleSession when it is being destroyed. 91 // Called by JingleSession when it is being destroyed.
85 void SessionDestroyed(JingleSession* jingle_session); 92 void SessionDestroyed(JingleSession* jingle_session);
86 93
87 void DoConnect(
88 JingleSession* jingle_session,
89 const std::string& host_jid,
90 const std::string& host_public_key,
91 const std::string& client_token,
92 Session::StateChangeCallback* state_change_callback);
93
94 // Callback for JingleInfoRequest. 94 // Callback for JingleInfoRequest.
95 void OnJingleInfo( 95 void OnJingleInfo(
96 const std::string& token, 96 const std::string& token,
97 const std::vector<std::string>& relay_hosts, 97 const std::vector<std::string>& relay_hosts,
98 const std::vector<talk_base::SocketAddress>& stun_hosts); 98 const std::vector<talk_base::SocketAddress>& stun_hosts);
99 99
100 // Creates cricket::SessionManager. 100 // Creates cricket::SessionManager.
101 void DoStartSessionManager(); 101 void DoStartSessionManager();
102 102
103 // Creates session description for outgoing session. 103 // Creates session description for outgoing session.
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 139
140 ScopedRunnableMethodFactory<JingleSessionManager> task_factory_; 140 ScopedRunnableMethodFactory<JingleSessionManager> task_factory_;
141 141
142 DISALLOW_COPY_AND_ASSIGN(JingleSessionManager); 142 DISALLOW_COPY_AND_ASSIGN(JingleSessionManager);
143 }; 143 };
144 144
145 } // namespace protocol 145 } // namespace protocol
146 } // namespace remoting 146 } // namespace remoting
147 147
148 #endif // REMOTING_PROTOCOL_JINGLE_SESSION_MANAGER_H_ 148 #endif // REMOTING_PROTOCOL_JINGLE_SESSION_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698