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

Unified Diff: chrome/renderer/media/cast_udp_transport.cc

Issue 66293003: P2P <-> cast library integration v0.1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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: chrome/renderer/media/cast_udp_transport.cc
diff --git a/chrome/renderer/media/cast_udp_transport.cc b/chrome/renderer/media/cast_udp_transport.cc
index de8148eac72cc9fe1b23f3ffe62122670b59a8a0..32ac46e854267d23578c05a3b129ea4ccda381a9 100644
--- a/chrome/renderer/media/cast_udp_transport.cc
+++ b/chrome/renderer/media/cast_udp_transport.cc
@@ -6,6 +6,22 @@
#include "base/logging.h"
#include "chrome/renderer/media/cast_session.h"
+#include "content/public/renderer/p2p_socket_client.h"
+#include "net/base/host_port_pair.h"
+#include "net/base/net_util.h"
+
+class CastUDPSocketFactory : public CastSession::SocketFactory {
Alpha Left Google 2013/11/09 00:30:18 nit: CastUdpSocketFactory to be consistent with Ca
hubbe 2013/11/26 20:24:29 Done.
+ public:
+ virtual content::P2PSocketClient* create() OVERRIDE {
+ content::P2PSocketClient *socket = content::CreateP2PSocket();
Alpha Left Google 2013/11/09 00:30:18 This should be scoped_ptr<content::P2PSocketClient
hubbe 2013/11/26 20:24:29 scoped_refptr actually
+ net::IPEndPoint unspecified_end_point;
+ socket->Init(content::P2P_SOCKET_UDP,
+ unspecified_end_point,
+ unspecified_end_point,
+ NULL);
+ return socket;
Alpha Left Google 2013/11/09 00:30:18 return socket.Pass() if socket is a scoped_ptr.
hubbe 2013/11/26 20:24:29 using scoped_refptr, no need for Pass
+ }
+};
CastUdpTransport::CastUdpTransport()
: cast_session_(new CastSession()) {
@@ -15,7 +31,15 @@ CastUdpTransport::~CastUdpTransport() {
}
void CastUdpTransport::Start(const net::HostPortPair& remote_address) {
Alpha Left Google 2013/11/09 00:30:18 Might as well just change the type to net::IPAddre
hubbe 2013/11/26 20:24:29 Done.
- NOTIMPLEMENTED();
+ net::IPAddressNumber ip;
+ if (!net::ParseIPLiteralToNumber(remote_address.host(), &ip)) {
+ // TODO(Hubbe): Report back to caller
+ return;
+ }
+ net::IPEndPoint endpoint(ip, remote_address.port());
+ cast_session_->SetSocketFactory(
+ new CastUDPSocketFactory(),
+ endpoint);
}
void CastUdpTransport::Stop() {

Powered by Google App Engine
This is Rietveld 408576698