summaryrefslogtreecommitdiffstats
path: root/remoting/protocol/connection_to_host.cc
diff options
context:
space:
mode:
authorsergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-13 00:08:02 +0000
committersergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-13 00:08:02 +0000
commit43129860c569ddf6176858e2e010645bbadaf554 (patch)
treebbeec76e402d052e8de17b3afc82ccb28c838282 /remoting/protocol/connection_to_host.cc
parent5e557a2246cbf79caeec1dc0b0e277821c2bb1dc (diff)
downloadchromium_src-43129860c569ddf6176858e2e010645bbadaf554.zip
chromium_src-43129860c569ddf6176858e2e010645bbadaf554.tar.gz
chromium_src-43129860c569ddf6176858e2e010645bbadaf554.tar.bz2
Add flag to use P2P Transport API.
BUG=51198 TEST=Manual Review URL: http://codereview.chromium.org/7740061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100811 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/protocol/connection_to_host.cc')
-rw-r--r--remoting/protocol/connection_to_host.cc26
1 files changed, 17 insertions, 9 deletions
diff --git a/remoting/protocol/connection_to_host.cc b/remoting/protocol/connection_to_host.cc
index 5ff8422..8452808 100644
--- a/remoting/protocol/connection_to_host.cc
+++ b/remoting/protocol/connection_to_host.cc
@@ -18,6 +18,7 @@
#include "remoting/protocol/host_control_sender.h"
#include "remoting/protocol/input_sender.h"
#include "remoting/protocol/jingle_session_manager.h"
+#include "remoting/protocol/pepper_session_manager.h"
#include "remoting/protocol/video_reader.h"
#include "remoting/protocol/video_stub.h"
#include "remoting/protocol/util.h"
@@ -27,12 +28,14 @@ namespace protocol {
ConnectionToHost::ConnectionToHost(
base::MessageLoopProxy* message_loop,
+ pp::Instance* pp_instance,
talk_base::NetworkManager* network_manager,
talk_base::PacketSocketFactory* socket_factory,
HostResolverFactory* host_resolver_factory,
PortAllocatorSessionFactory* session_factory,
bool allow_nat_traversal)
: message_loop_(message_loop),
+ pp_instance_(pp_instance),
network_manager_(network_manager),
socket_factory_(socket_factory),
host_resolver_factory_(host_resolver_factory),
@@ -108,17 +111,22 @@ void ConnectionToHost::Disconnect(const base::Closure& shutdown_task) {
void ConnectionToHost::InitSession() {
DCHECK(message_loop_->BelongsToCurrentThread());
- // Initialize chromotocol |session_manager_|.
- JingleSessionManager* session_manager =
- JingleSessionManager::CreateSandboxed(
- message_loop_, network_manager_.release(), socket_factory_.release(),
- host_resolver_factory_.release(),
- port_allocator_session_factory_.release());
+ // Initialize |session_manager_|.
+ if (pp_instance_) {
+ session_manager_.reset(new PepperSessionManager(pp_instance_));
+ } else {
+ JingleSessionManager* session_manager =
+ JingleSessionManager::CreateSandboxed(
+ message_loop_, network_manager_.release(),
+ socket_factory_.release(), host_resolver_factory_.release(),
+ port_allocator_session_factory_.release());
- // TODO(ajwong): Make this a command switch when we're more stable.
- session_manager->set_allow_local_ips(true);
+ // TODO(ajwong): Make this a command switch when we're more stable.
+ session_manager->set_allow_local_ips(true);
+
+ session_manager_.reset(session_manager);
+ }
- session_manager_.reset(session_manager);
session_manager_->Init(
local_jid_, signal_strategy_.get(), this, NULL, "", allow_nat_traversal_);
}