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

Unified Diff: remoting/protocol/jingle_connection_to_host.cc

Issue 6030007: Chromoting protocol layers to receive and send login messages (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: protol Created 10 years 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 side-by-side diff with in-line comments
Download patch
Index: remoting/protocol/jingle_connection_to_host.cc
diff --git a/remoting/protocol/jingle_connection_to_host.cc b/remoting/protocol/jingle_connection_to_host.cc
index a551f17edf220722efb916b7a8c7e57bf79cb161..00fdb4e54d85fee3a3db30d896e55c47a488fe2d 100644
--- a/remoting/protocol/jingle_connection_to_host.cc
+++ b/remoting/protocol/jingle_connection_to_host.cc
@@ -9,6 +9,7 @@
#include "remoting/base/constants.h"
#include "remoting/jingle_glue/jingle_thread.h"
#include "remoting/proto/auth.pb.h"
+#include "remoting/protocol/client_message_dispatcher.h"
#include "remoting/protocol/client_stub.h"
#include "remoting/protocol/input_sender.h"
#include "remoting/protocol/jingle_session_manager.h"
@@ -21,7 +22,8 @@ namespace protocol {
JingleConnectionToHost::JingleConnectionToHost(JingleThread* thread)
: thread_(thread),
- event_callback_(NULL) {
+ event_callback_(NULL),
+ dispatcher_(new ClientMessageDispatcher()) {
}
JingleConnectionToHost::~JingleConnectionToHost() {
@@ -34,6 +36,7 @@ void JingleConnectionToHost::Connect(const std::string& username,
ClientStub* client_stub,
VideoStub* video_stub) {
event_callback_ = event_callback;
+ client_stub_ = client_stub;
video_stub_ = video_stub;
// Initialize |jingle_client_|.
@@ -65,18 +68,12 @@ void JingleConnectionToHost::Disconnect() {
}
}
-void JingleConnectionToHost::OnControlMessage(ControlMessage* msg) {
- // TODO(sergeyu): Remove this method and pass ClientStub to the control
- // stream dispatcher.
- delete msg;
-}
-
void JingleConnectionToHost::InitSession() {
DCHECK_EQ(message_loop(), MessageLoop::current());
// Initialize chromotocol |session_manager_|.
- protocol::JingleSessionManager* session_manager =
- new protocol::JingleSessionManager(thread_);
+ JingleSessionManager* session_manager =
+ new JingleSessionManager(thread_);
// TODO(ajwong): Make this a command switch when we're more stable.
session_manager->set_allow_local_ips(true);
session_manager->Init(
@@ -144,35 +141,35 @@ void JingleConnectionToHost::OnStateChange(JingleClient* client,
}
}
-void JingleConnectionToHost::OnNewSession(protocol::Session* session,
- protocol::SessionManager::IncomingSessionResponse* response) {
+void JingleConnectionToHost::OnNewSession(Session* session,
+ SessionManager::IncomingSessionResponse* response) {
DCHECK_EQ(message_loop(), MessageLoop::current());
// Client always rejects incoming sessions.
- *response = protocol::SessionManager::DECLINE;
+ *response = SessionManager::DECLINE;
}
void JingleConnectionToHost::OnSessionStateChange(
- protocol::Session::State state) {
+ Session::State state) {
DCHECK_EQ(message_loop(), MessageLoop::current());
DCHECK(event_callback_);
switch (state) {
- case protocol::Session::FAILED:
+ case Session::FAILED:
event_callback_->OnConnectionFailed(this);
break;
- case protocol::Session::CLOSED:
+ case Session::CLOSED:
event_callback_->OnConnectionClosed(this);
break;
- case protocol::Session::CONNECTED:
+ case Session::CONNECTED:
// Initialize reader and writer.
- control_reader_.Init<ControlMessage>(
- session_->control_channel(),
- NewCallback(this, &JingleConnectionToHost::OnControlMessage));
video_reader_.reset(VideoReader::Create(session_->config()));
video_reader_->Init(session_, video_stub_);
input_stub_.reset(new InputSender(session_->event_channel()));
+ if (!dispatcher_->Initialize(session_.get(), client_stub_)) {
+ LOG(WARNING) << "Failed to initialize ClientMessageDispatcher";
awong 2010/12/23 02:30:31 ...is this safe? Is there any sort of sane recove
+ }
event_callback_->OnConnectionOpened(this);
break;

Powered by Google App Engine
This is Rietveld 408576698