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

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

Issue 1415103006: Non-Local Join for Media Router and Presentation API (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing ChromeOS System Tray Test Created 4 years, 11 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
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 <utility> 7 #include <utility>
8 8
9 #include "base/android/context_utils.h" 9 #include "base/android/context_utils.h"
10 #include "base/android/jni_android.h" 10 #include "base/android/jni_android.h"
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 env, 109 env,
110 java_media_router_.obj(), 110 java_media_router_.obj(),
111 jsource_id.obj(), 111 jsource_id.obj(),
112 jsink_id.obj(), 112 jsink_id.obj(),
113 jpresentation_id.obj(), 113 jpresentation_id.obj(),
114 jorigin.obj(), 114 jorigin.obj(),
115 tab_id, 115 tab_id,
116 route_request_id); 116 route_request_id);
117 } 117 }
118 118
119 void MediaRouterAndroid::ConnectRouteByRouteId(
120 const MediaSource::Id& source,
121 const MediaRoute::Id& route_id,
122 const GURL& origin,
123 content::WebContents* web_contents,
124 const std::vector<MediaRouteResponseCallback>& callbacks) {
125 NOTIMPLEMENTED();
126 }
127
119 void MediaRouterAndroid::JoinRoute( 128 void MediaRouterAndroid::JoinRoute(
120 const MediaSource::Id& source_id, 129 const MediaSource::Id& source_id,
121 const std::string& presentation_id, 130 const std::string& presentation_id,
122 const GURL& origin, 131 const GURL& origin,
123 content::WebContents* web_contents, 132 content::WebContents* web_contents,
124 const std::vector<MediaRouteResponseCallback>& callbacks) { 133 const std::vector<MediaRouteResponseCallback>& callbacks) {
125 if (!origin.is_valid()) { 134 if (!origin.is_valid()) {
126 for (const MediaRouteResponseCallback& callback : callbacks) 135 for (const MediaRouteResponseCallback& callback : callbacks)
127 callback.Run(nullptr, "", "Invalid origin"); 136 callback.Run(nullptr, "", "Invalid origin");
128 return; 137 return;
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 ScopedJavaLocalRef<jstring> jsource_id = 272 ScopedJavaLocalRef<jstring> jsource_id =
264 base::android::ConvertUTF8ToJavaString(env, source_id); 273 base::android::ConvertUTF8ToJavaString(env, source_id);
265 Java_ChromeMediaRouter_stopObservingMediaSinks( 274 Java_ChromeMediaRouter_stopObservingMediaSinks(
266 env, java_media_router_.obj(), jsource_id.obj()); 275 env, java_media_router_.obj(), jsource_id.obj());
267 } 276 }
268 } 277 }
269 278
270 void MediaRouterAndroid::RegisterMediaRoutesObserver( 279 void MediaRouterAndroid::RegisterMediaRoutesObserver(
271 MediaRoutesObserver* observer) { 280 MediaRoutesObserver* observer) {
272 DVLOG(2) << "Added MediaRoutesObserver: " << observer; 281 DVLOG(2) << "Added MediaRoutesObserver: " << observer;
282 if (!observer->source_id().empty())
283 NOTIMPLEMENTED() << "Joinable routes query not implemented.";
284
273 routes_observers_.AddObserver(observer); 285 routes_observers_.AddObserver(observer);
274 } 286 }
275 287
276 void MediaRouterAndroid::UnregisterMediaRoutesObserver( 288 void MediaRouterAndroid::UnregisterMediaRoutesObserver(
277 MediaRoutesObserver* observer) { 289 MediaRoutesObserver* observer) {
278 if (!routes_observers_.HasObserver(observer)) 290 if (!routes_observers_.HasObserver(observer))
279 return; 291 return;
280 routes_observers_.RemoveObserver(observer); 292 routes_observers_.RemoveObserver(observer);
281 } 293 }
282 294
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 jis_local, std::string(), 380 jis_local, std::string(),
369 true); // TODO(avayvod): Populate for_display. 381 true); // TODO(avayvod): Populate for_display.
370 382
371 for (const MediaRouteResponseCallback& callback : request->callbacks) 383 for (const MediaRouteResponseCallback& callback : request->callbacks)
372 callback.Run(&route, request->presentation_id, std::string()); 384 callback.Run(&route, request->presentation_id, std::string());
373 385
374 route_requests_.Remove(jroute_request_id); 386 route_requests_.Remove(jroute_request_id);
375 387
376 active_routes_.push_back(route); 388 active_routes_.push_back(route);
377 FOR_EACH_OBSERVER(MediaRoutesObserver, routes_observers_, 389 FOR_EACH_OBSERVER(MediaRoutesObserver, routes_observers_,
378 OnRoutesUpdated(active_routes_)); 390 OnRoutesUpdated(active_routes_, std::vector<MediaRoute::Id>()));
379 } 391 }
380 392
381 void MediaRouterAndroid::OnRouteRequestError( 393 void MediaRouterAndroid::OnRouteRequestError(
382 JNIEnv* env, 394 JNIEnv* env,
383 const JavaParamRef<jobject>& obj, 395 const JavaParamRef<jobject>& obj,
384 const JavaParamRef<jstring>& jerror_text, 396 const JavaParamRef<jstring>& jerror_text,
385 jint jroute_request_id) { 397 jint jroute_request_id) {
386 MediaRouteRequest* request = route_requests_.Lookup(jroute_request_id); 398 MediaRouteRequest* request = route_requests_.Lookup(jroute_request_id);
387 if (!request) 399 if (!request)
388 return; 400 return;
(...skipping 11 matching lines...) Expand all
400 const JavaParamRef<jobject>& obj, 412 const JavaParamRef<jobject>& obj,
401 const JavaParamRef<jstring>& jmedia_route_id) { 413 const JavaParamRef<jstring>& jmedia_route_id) {
402 MediaRoute::Id route_id = ConvertJavaStringToUTF8(env, jmedia_route_id); 414 MediaRoute::Id route_id = ConvertJavaStringToUTF8(env, jmedia_route_id);
403 for (auto it = active_routes_.begin(); it != active_routes_.end(); ++it) 415 for (auto it = active_routes_.begin(); it != active_routes_.end(); ++it)
404 if (it->media_route_id() == route_id) { 416 if (it->media_route_id() == route_id) {
405 active_routes_.erase(it); 417 active_routes_.erase(it);
406 break; 418 break;
407 } 419 }
408 420
409 FOR_EACH_OBSERVER(MediaRoutesObserver, routes_observers_, 421 FOR_EACH_OBSERVER(MediaRoutesObserver, routes_observers_,
410 OnRoutesUpdated(active_routes_)); 422 OnRoutesUpdated(active_routes_, std::vector<MediaRoute::Id>()));
411 } 423 }
412 424
413 void MediaRouterAndroid::OnMessageSentResult(JNIEnv* env, 425 void MediaRouterAndroid::OnMessageSentResult(JNIEnv* env,
414 const JavaParamRef<jobject>& obj, 426 const JavaParamRef<jobject>& obj,
415 jboolean jsuccess, 427 jboolean jsuccess,
416 jint jcallback_id) { 428 jint jcallback_id) {
417 SendRouteMessageCallback* callback = message_callbacks_.Lookup(jcallback_id); 429 SendRouteMessageCallback* callback = message_callbacks_.Lookup(jcallback_id);
418 callback->Run(jsuccess); 430 callback->Run(jsuccess);
419 message_callbacks_.Remove(jcallback_id); 431 message_callbacks_.Remove(jcallback_id);
420 } 432 }
(...skipping 12 matching lines...) Expand all
433 scoped_ptr<content::PresentationSessionMessage> message( 445 scoped_ptr<content::PresentationSessionMessage> message(
434 new content::PresentationSessionMessage(content::TEXT)); 446 new content::PresentationSessionMessage(content::TEXT));
435 message->message = ConvertJavaStringToUTF8(env, jmessage); 447 message->message = ConvertJavaStringToUTF8(env, jmessage);
436 session_messages.push_back(std::move(message)); 448 session_messages.push_back(std::move(message));
437 449
438 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list, 450 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list,
439 OnMessagesReceived(session_messages, true)); 451 OnMessagesReceived(session_messages, true));
440 } 452 }
441 453
442 } // namespace media_router 454 } // namespace media_router
OLDNEW
« no previous file with comments | « chrome/browser/media/android/router/media_router_android.h ('k') | chrome/browser/media/router/media_router.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698