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

Side by Side Diff: chrome/browser/media/android/router/media_router_android.cc

Issue 1361763006: [Presentation API, Android] Plumbing SendBinaryMessage() from C++ MediaRouterAndroid to java side. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 2 months 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 unified diff | Download patch
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/media/router/cast/CastRouteController.java ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/media/android/router/media_router_android.h" 5 #include "chrome/browser/media/android/router/media_router_android.h"
6 6
7 #include "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "base/android/jni_array.h"
8 #include "base/android/jni_string.h" 9 #include "base/android/jni_string.h"
9 #include "base/guid.h" 10 #include "base/guid.h"
10 #include "base/logging.h" 11 #include "base/logging.h"
11 #include "base/memory/scoped_vector.h" 12 #include "base/memory/scoped_vector.h"
12 #include "base/strings/stringprintf.h" 13 #include "base/strings/stringprintf.h"
13 #include "chrome/browser/media/router/media_routes_observer.h" 14 #include "chrome/browser/media/router/media_routes_observer.h"
14 #include "chrome/browser/media/router/media_sinks_observer.h" 15 #include "chrome/browser/media/router/media_sinks_observer.h"
15 #include "chrome/browser/media/router/presentation_session_messages_observer.h" 16 #include "chrome/browser/media/router/presentation_session_messages_observer.h"
16 #include "jni/ChromeMediaRouter_jni.h" 17 #include "jni/ChromeMediaRouter_jni.h"
17 #include "url/gurl.h" 18 #include "url/gurl.h"
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 java_media_router_.obj(), 159 java_media_router_.obj(),
159 jroute_id.obj(), 160 jroute_id.obj(),
160 jmessage.obj(), 161 jmessage.obj(),
161 callback_id); 162 callback_id);
162 } 163 }
163 164
164 void MediaRouterAndroid::SendRouteBinaryMessage( 165 void MediaRouterAndroid::SendRouteBinaryMessage(
165 const MediaRoute::Id& route_id, 166 const MediaRoute::Id& route_id,
166 scoped_ptr<std::vector<uint8>> data, 167 scoped_ptr<std::vector<uint8>> data,
167 const SendRouteMessageCallback& callback) { 168 const SendRouteMessageCallback& callback) {
168 NOTIMPLEMENTED(); 169 int callback_id =
170 message_callbacks_.Add(new SendRouteMessageCallback(callback));
171 JNIEnv* env = base::android::AttachCurrentThread();
172 ScopedJavaLocalRef<jstring> jroute_id =
173 base::android::ConvertUTF8ToJavaString(env, route_id);
174 ScopedJavaLocalRef<jbyteArray> jbyte_array =
175 base::android::ToJavaByteArray(env, &((*data)[0]), data->size());
176 Java_ChromeMediaRouter_sendBinaryMessage(env, java_media_router_.obj(),
177 jroute_id.obj(), jbyte_array.obj(),
178 callback_id);
169 } 179 }
170 180
171 void MediaRouterAndroid::AddIssue(const Issue& issue) { 181 void MediaRouterAndroid::AddIssue(const Issue& issue) {
172 NOTIMPLEMENTED(); 182 NOTIMPLEMENTED();
173 } 183 }
174 184
175 void MediaRouterAndroid::ClearIssue(const Issue::Id& issue_id) { 185 void MediaRouterAndroid::ClearIssue(const Issue::Id& issue_id) {
176 NOTIMPLEMENTED(); 186 NOTIMPLEMENTED();
177 } 187 }
178 188
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
393 scoped_ptr<content::PresentationSessionMessage> message( 403 scoped_ptr<content::PresentationSessionMessage> message(
394 new content::PresentationSessionMessage(content::TEXT)); 404 new content::PresentationSessionMessage(content::TEXT));
395 message->message = ConvertJavaStringToUTF8(env, jmessage); 405 message->message = ConvertJavaStringToUTF8(env, jmessage);
396 session_messages.push_back(message.Pass()); 406 session_messages.push_back(message.Pass());
397 407
398 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list, 408 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list,
399 OnMessagesReceived(session_messages, true)); 409 OnMessagesReceived(session_messages, true));
400 } 410 }
401 411
402 } // namespace media_router 412 } // namespace media_router
OLDNEW
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/media/router/cast/CastRouteController.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698