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

Side by Side Diff: chrome/browser/media/router/media_router_mojo_impl.cc

Issue 1259333004: [MediaRouter]Wires up issue manager in MediaRouterMojoImpl. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 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/router/media_router_mojo_impl.h" 5 #include "chrome/browser/media/router/media_router_mojo_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/guid.h" 8 #include "base/guid.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/scoped_vector.h" 10 #include "base/memory/scoped_vector.h"
11 #include "base/observer_list.h" 11 #include "base/observer_list.h"
12 #include "base/strings/stringprintf.h" 12 #include "base/strings/stringprintf.h"
13 #include "chrome/browser/media/router/issues_observer.h"
13 #include "chrome/browser/media/router/media_router_factory.h" 14 #include "chrome/browser/media/router/media_router_factory.h"
14 #include "chrome/browser/media/router/media_router_type_converters.h" 15 #include "chrome/browser/media/router/media_router_type_converters.h"
15 #include "chrome/browser/media/router/media_routes_observer.h" 16 #include "chrome/browser/media/router/media_routes_observer.h"
16 #include "chrome/browser/media/router/media_sinks_observer.h" 17 #include "chrome/browser/media/router/media_sinks_observer.h"
17 #include "extensions/browser/process_manager.h" 18 #include "extensions/browser/process_manager.h"
18 19
19 #define DVLOG_WITH_INSTANCE(level) \ 20 #define DVLOG_WITH_INSTANCE(level) \
20 DVLOG(level) << "MR #" << instance_id_ << ": " 21 DVLOG(level) << "MR #" << instance_id_ << ": "
21 22
22 #define DLOG_WITH_INSTANCE(level) DLOG(level) << "MR #" << instance_id_ << ": " 23 #define DLOG_WITH_INSTANCE(level) DLOG(level) << "MR #" << instance_id_ << ": "
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 DCHECK(thread_checker_.CalledOnValidThread()); 137 DCHECK(thread_checker_.CalledOnValidThread());
137 138
138 media_route_provider_ = media_route_provider_ptr.Pass(); 139 media_route_provider_ = media_route_provider_ptr.Pass();
139 media_route_provider_.set_connection_error_handler(base::Bind( 140 media_route_provider_.set_connection_error_handler(base::Bind(
140 &MediaRouterMojoImpl::OnConnectionError, base::Unretained(this))); 141 &MediaRouterMojoImpl::OnConnectionError, base::Unretained(this)));
141 callback.Run(instance_id_); 142 callback.Run(instance_id_);
142 ExecutePendingRequests(); 143 ExecutePendingRequests();
143 } 144 }
144 145
145 void MediaRouterMojoImpl::OnIssue(const interfaces::IssuePtr issue) { 146 void MediaRouterMojoImpl::OnIssue(const interfaces::IssuePtr issue) {
146 // TODO(imcheng): Implement. (crbug.com/461815)
147 DCHECK(thread_checker_.CalledOnValidThread()); 147 DCHECK(thread_checker_.CalledOnValidThread());
148 NOTIMPLEMENTED(); 148 DVLOG_WITH_INSTANCE(1) << "OnIssue " << issue->title;
149 const Issue& issue_converted = issue.To<Issue>();
150 issue_manager_.AddIssue(issue_converted);
149 } 151 }
150 152
151 void MediaRouterMojoImpl::OnSinksReceived( 153 void MediaRouterMojoImpl::OnSinksReceived(
152 const mojo::String& media_source, 154 const mojo::String& media_source,
153 mojo::Array<interfaces::MediaSinkPtr> sinks) { 155 mojo::Array<interfaces::MediaSinkPtr> sinks) {
154 DCHECK(thread_checker_.CalledOnValidThread()); 156 DCHECK(thread_checker_.CalledOnValidThread());
155 157
156 DVLOG_WITH_INSTANCE(1) << "OnSinksReceived"; 158 DVLOG_WITH_INSTANCE(1) << "OnSinksReceived";
157 std::vector<MediaSink> sinks_converted; 159 std::vector<MediaSink> sinks_converted;
158 sinks_converted.reserve(sinks.size()); 160 sinks_converted.reserve(sinks.size());
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 void MediaRouterMojoImpl::ListenForRouteMessages( 249 void MediaRouterMojoImpl::ListenForRouteMessages(
248 const std::vector<MediaRoute::Id>& route_ids, 250 const std::vector<MediaRoute::Id>& route_ids,
249 const PresentationSessionMessageCallback& message_cb) { 251 const PresentationSessionMessageCallback& message_cb) {
250 DCHECK(thread_checker_.CalledOnValidThread()); 252 DCHECK(thread_checker_.CalledOnValidThread());
251 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoListenForRouteMessages, 253 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoListenForRouteMessages,
252 base::Unretained(this), route_ids, message_cb)); 254 base::Unretained(this), route_ids, message_cb));
253 } 255 }
254 256
255 void MediaRouterMojoImpl::ClearIssue(const Issue::Id& issue_id) { 257 void MediaRouterMojoImpl::ClearIssue(const Issue::Id& issue_id) {
256 DCHECK(thread_checker_.CalledOnValidThread()); 258 DCHECK(thread_checker_.CalledOnValidThread());
257 259 issue_manager_.ClearIssue(issue_id);
258 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoClearIssue, 260 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoClearIssue,
259 base::Unretained(this), issue_id)); 261 base::Unretained(this), issue_id));
260 } 262 }
261 263
262 void MediaRouterMojoImpl::RegisterMediaSinksObserver( 264 void MediaRouterMojoImpl::RegisterMediaSinksObserver(
263 MediaSinksObserver* observer) { 265 MediaSinksObserver* observer) {
264 DCHECK(thread_checker_.CalledOnValidThread()); 266 DCHECK(thread_checker_.CalledOnValidThread());
265 267
266 // Create an observer list for the media source and add |observer| 268 // Create an observer list for the media source and add |observer|
267 // to it. Fail if |observer| is already registered. 269 // to it. Fail if |observer| is already registered.
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 return; 323 return;
322 324
323 routes_observers_.RemoveObserver(observer); 325 routes_observers_.RemoveObserver(observer);
324 if (!routes_observers_.might_have_observers()) { 326 if (!routes_observers_.might_have_observers()) {
325 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoStopObservingMediaRoutes, 327 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoStopObservingMediaRoutes,
326 base::Unretained(this))); 328 base::Unretained(this)));
327 } 329 }
328 } 330 }
329 331
330 void MediaRouterMojoImpl::RegisterIssuesObserver(IssuesObserver* observer) { 332 void MediaRouterMojoImpl::RegisterIssuesObserver(IssuesObserver* observer) {
331 // TODO(imcheng): Implement. (crbug.com/461815) 333 DCHECK(thread_checker_.CalledOnValidThread());
332 NOTIMPLEMENTED(); 334 issue_manager_.RegisterObserver(observer);
333 } 335 }
334 336
335 void MediaRouterMojoImpl::UnregisterIssuesObserver(IssuesObserver* observer) { 337 void MediaRouterMojoImpl::UnregisterIssuesObserver(IssuesObserver* observer) {
336 // TODO(imcheng): Implement. (crbug.com/461815) 338 DCHECK(thread_checker_.CalledOnValidThread());
337 NOTIMPLEMENTED(); 339 issue_manager_.UnregisterObserver(observer);
338 } 340 }
339 341
340 void MediaRouterMojoImpl::DoCreateRoute( 342 void MediaRouterMojoImpl::DoCreateRoute(
341 const MediaSource::Id& source_id, 343 const MediaSource::Id& source_id,
342 const MediaSink::Id& sink_id, 344 const MediaSink::Id& sink_id,
343 const std::string& origin, 345 const std::string& origin,
344 int tab_id, 346 int tab_id,
345 const std::vector<MediaRouteResponseCallback>& callbacks) { 347 const std::vector<MediaRouteResponseCallback>& callbacks) {
346 std::string presentation_id("mr_"); 348 std::string presentation_id("mr_");
347 presentation_id += base::GenerateGUID(); 349 presentation_id += base::GenerateGUID();
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
471 return; 473 return;
472 } 474 }
473 475
474 for (const auto& next_request : pending_requests_) 476 for (const auto& next_request : pending_requests_)
475 next_request.Run(); 477 next_request.Run();
476 478
477 pending_requests_.clear(); 479 pending_requests_.clear();
478 } 480 }
479 481
480 } // namespace media_router 482 } // namespace media_router
OLDNEW
« no previous file with comments | « chrome/browser/media/router/media_router_mojo_impl.h ('k') | chrome/browser/media/router/media_router_mojo_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698