Index: chrome/browser/media/router/media_router_mojo_impl.cc |
diff --git a/chrome/browser/media/router/media_router_mojo_impl.cc b/chrome/browser/media/router/media_router_mojo_impl.cc |
index 976b0eeb70d8ccfb8e3a220ef0bc170bc2c08eff..a8b513757b9fd83800a53b4891929b371ffb4a3c 100644 |
--- a/chrome/browser/media/router/media_router_mojo_impl.cc |
+++ b/chrome/browser/media/router/media_router_mojo_impl.cc |
@@ -244,6 +244,17 @@ void MediaRouterMojoImpl::SendRouteMessage( |
base::Unretained(this), route_id, message, callback)); |
} |
+void MediaRouterMojoImpl::SendRouteBinaryMessage( |
+ const MediaRoute::Id& route_id, |
+ scoped_ptr<std::vector<uint8>> data, |
+ const SendRouteMessageCallback& callback) { |
+ DCHECK(thread_checker_.CalledOnValidThread()); |
+ |
+ RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoSendSessionBinaryMessage, |
+ base::Unretained(this), route_id, |
+ base::Passed(data.Pass()), callback)); |
+} |
+ |
void MediaRouterMojoImpl::ListenForRouteMessages( |
const std::vector<MediaRoute::Id>& route_ids, |
const PresentationSessionMessageCallback& message_cb) { |
@@ -378,6 +389,17 @@ void MediaRouterMojoImpl::DoSendSessionMessage( |
media_route_provider_->SendRouteMessage(route_id, message, callback); |
} |
+void MediaRouterMojoImpl::DoSendSessionBinaryMessage( |
+ const MediaRoute::Id& route_id, |
+ scoped_ptr<std::vector<uint8>> data, |
+ const SendRouteMessageCallback& callback) { |
+ DVLOG_WITH_INSTANCE(1) << "SendRouteBinaryMessage " << route_id; |
+ mojo::Array<uint8> mojo_array; |
+ mojo_array.Swap(data.get()); |
+ media_route_provider_->SendRouteBinaryMessage(route_id, mojo_array.Pass(), |
+ callback); |
+} |
+ |
void MediaRouterMojoImpl::DoListenForRouteMessages( |
const std::vector<MediaRoute::Id>& route_ids, |
const PresentationSessionMessageCallback& message_cb) { |