Index: remoting/client/chromoting_client.h |
diff --git a/remoting/client/chromoting_client.h b/remoting/client/chromoting_client.h |
index 65f9910d052fb59585bb8a94a97d8e09e1012ea2..b052c9a0b6155751ecb038e1f959602bb82141c6 100644 |
--- a/remoting/client/chromoting_client.h |
+++ b/remoting/client/chromoting_client.h |
@@ -11,8 +11,6 @@ |
#include "base/callback.h" |
#include "base/memory/scoped_ptr.h" |
-#include "base/memory/weak_ptr.h" |
-#include "remoting/client/client_config.h" |
#include "remoting/client/chromoting_stats.h" |
#include "remoting/protocol/client_stub.h" |
#include "remoting/protocol/clipboard_stub.h" |
@@ -43,9 +41,7 @@ class ChromotingClient : public protocol::ConnectionToHost::HostEventCallback, |
public protocol::ClientStub { |
public: |
// |audio_player| may be null, in which case audio will not be requested. |
- ChromotingClient(const ClientConfig& config, |
- ClientContext* client_context, |
- protocol::ConnectionToHost* connection, |
+ ChromotingClient(ClientContext* client_context, |
ClientUserInterface* user_interface, |
VideoRenderer* video_renderer, |
scoped_ptr<AudioPlayer> audio_player); |
@@ -55,7 +51,20 @@ class ChromotingClient : public protocol::ConnectionToHost::HostEventCallback, |
// Start the client. Must be called on the main thread. |signal_strategy| |
// must outlive the client. |
void Start(SignalStrategy* signal_strategy, |
- scoped_ptr<protocol::TransportFactory> transport_factory); |
+ scoped_ptr<protocol::Authenticator> authenticator, |
+ scoped_ptr<protocol::TransportFactory> transport_factory, |
+ const std::string& host_jid, |
+ const std::string& capabilities); |
+ |
+ protocol::ConnectionToHost::State connection_state() const { |
+ return connection_.state(); |
+ } |
+ |
+ protocol::ClipboardStub* clipboard_forwarder() { |
+ return connection_.clipboard_forwarder(); |
+ } |
+ protocol::HostStub* host_stub() { return connection_.host_stub(); } |
+ protocol::InputStub* input_stub() { return connection_.input_stub(); } |
// ClientStub implementation. |
virtual void SetCapabilities( |
@@ -89,16 +98,15 @@ class ChromotingClient : public protocol::ConnectionToHost::HostEventCallback, |
void OnChannelsConnected(); |
// The following are not owned by this class. |
- ClientConfig config_; |
scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
- protocol::ConnectionToHost* connection_; |
ClientUserInterface* user_interface_; |
VideoRenderer* video_renderer_; |
+ protocol::ConnectionToHost connection_; |
+ |
scoped_ptr<AudioDecodeScheduler> audio_decode_scheduler_; |
- // If non-NULL, this is called when the client is done. |
- base::Closure client_done_; |
+ std::string local_capabilities_; |
// The set of all capabilities supported by the host. |
std::string host_capabilities_; |
@@ -109,10 +117,6 @@ class ChromotingClient : public protocol::ConnectionToHost::HostEventCallback, |
// Record the statistics of the connection. |
ChromotingStats stats_; |
- // WeakPtr used to avoid tasks accessing the client after it is deleted. |
- base::WeakPtr<ChromotingClient> weak_ptr_; |
- base::WeakPtrFactory<ChromotingClient> weak_factory_; |
- |
DISALLOW_COPY_AND_ASSIGN(ChromotingClient); |
}; |