OLD | NEW |
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_string.h" | 8 #include "base/android/jni_string.h" |
9 #include "base/guid.h" | 9 #include "base/guid.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
181 | 181 |
182 void MediaRouterAndroid::ClearIssue(const Issue::Id& issue_id) { | 182 void MediaRouterAndroid::ClearIssue(const Issue::Id& issue_id) { |
183 NOTIMPLEMENTED(); | 183 NOTIMPLEMENTED(); |
184 } | 184 } |
185 | 185 |
186 void MediaRouterAndroid::OnPresentationSessionDetached( | 186 void MediaRouterAndroid::OnPresentationSessionDetached( |
187 const MediaRoute::Id& route_id) { | 187 const MediaRoute::Id& route_id) { |
188 CloseRoute(route_id); | 188 CloseRoute(route_id); |
189 } | 189 } |
190 | 190 |
| 191 bool MediaRouterAndroid::HasLocalRoute() const { |
| 192 NOTIMPLEMENTED(); |
| 193 return false; |
| 194 } |
| 195 |
191 bool MediaRouterAndroid::RegisterMediaSinksObserver( | 196 bool MediaRouterAndroid::RegisterMediaSinksObserver( |
192 MediaSinksObserver* observer) { | 197 MediaSinksObserver* observer) { |
193 const std::string& source_id = observer->source().id(); | 198 const std::string& source_id = observer->source().id(); |
194 base::ObserverList<MediaSinksObserver>* observer_list = | 199 base::ObserverList<MediaSinksObserver>* observer_list = |
195 sinks_observers_.get(source_id); | 200 sinks_observers_.get(source_id); |
196 if (!observer_list) { | 201 if (!observer_list) { |
197 observer_list = new base::ObserverList<MediaSinksObserver>; | 202 observer_list = new base::ObserverList<MediaSinksObserver>; |
198 sinks_observers_.add(source_id, make_scoped_ptr(observer_list)); | 203 sinks_observers_.add(source_id, make_scoped_ptr(observer_list)); |
199 } else { | 204 } else { |
200 DCHECK(!observer_list->HasObserver(observer)); | 205 DCHECK(!observer_list->HasObserver(observer)); |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
269 PresentationSessionMessagesObserver* observer) { | 274 PresentationSessionMessagesObserver* observer) { |
270 const MediaRoute::Id& route_id = observer->route_id(); | 275 const MediaRoute::Id& route_id = observer->route_id(); |
271 auto* observer_list = messages_observers_.get(route_id); | 276 auto* observer_list = messages_observers_.get(route_id); |
272 DCHECK(observer_list->HasObserver(observer)); | 277 DCHECK(observer_list->HasObserver(observer)); |
273 | 278 |
274 observer_list->RemoveObserver(observer); | 279 observer_list->RemoveObserver(observer); |
275 if (!observer_list->might_have_observers()) | 280 if (!observer_list->might_have_observers()) |
276 messages_observers_.erase(route_id); | 281 messages_observers_.erase(route_id); |
277 } | 282 } |
278 | 283 |
| 284 void MediaRouterAndroid::RegisterLocalMediaRoutesObserver( |
| 285 LocalMediaRoutesObserver* observer) { |
| 286 NOTIMPLEMENTED(); |
| 287 } |
| 288 |
| 289 void MediaRouterAndroid::UnregisterLocalMediaRoutesObserver( |
| 290 LocalMediaRoutesObserver* observer) { |
| 291 NOTIMPLEMENTED(); |
| 292 } |
| 293 |
279 void MediaRouterAndroid::OnSinksReceived( | 294 void MediaRouterAndroid::OnSinksReceived( |
280 JNIEnv* env, | 295 JNIEnv* env, |
281 jobject obj, | 296 jobject obj, |
282 jstring jsource_urn, | 297 jstring jsource_urn, |
283 jint jcount) { | 298 jint jcount) { |
284 std::vector<MediaSink> sinks_converted; | 299 std::vector<MediaSink> sinks_converted; |
285 sinks_converted.reserve(jcount); | 300 sinks_converted.reserve(jcount); |
286 for (int i = 0; i < jcount; ++i) { | 301 for (int i = 0; i < jcount; ++i) { |
287 ScopedJavaLocalRef<jstring> jsink_urn = | 302 ScopedJavaLocalRef<jstring> jsink_urn = |
288 Java_ChromeMediaRouter_getSinkUrn( | 303 Java_ChromeMediaRouter_getSinkUrn( |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
381 scoped_ptr<content::PresentationSessionMessage> message( | 396 scoped_ptr<content::PresentationSessionMessage> message( |
382 new content::PresentationSessionMessage(content::TEXT)); | 397 new content::PresentationSessionMessage(content::TEXT)); |
383 message->message = ConvertJavaStringToUTF8(env, jmessage); | 398 message->message = ConvertJavaStringToUTF8(env, jmessage); |
384 session_messages.push_back(message.Pass()); | 399 session_messages.push_back(message.Pass()); |
385 | 400 |
386 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list, | 401 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list, |
387 OnMessagesReceived(session_messages, true)); | 402 OnMessagesReceived(session_messages, true)); |
388 } | 403 } |
389 | 404 |
390 } // namespace media_router | 405 } // namespace media_router |
OLD | NEW |