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

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

Issue 1551503002: Convert Pass()→std::move() in //chrome (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 <stddef.h> 7 #include <stddef.h>
8 #include <utility>
8 9
9 #include "base/bind.h" 10 #include "base/bind.h"
10 #include "base/guid.h" 11 #include "base/guid.h"
11 #include "base/logging.h" 12 #include "base/logging.h"
12 #include "base/memory/scoped_vector.h" 13 #include "base/memory/scoped_vector.h"
13 #include "base/observer_list.h" 14 #include "base/observer_list.h"
14 #include "base/stl_util.h" 15 #include "base/stl_util.h"
15 #include "base/strings/stringprintf.h" 16 #include "base/strings/stringprintf.h"
16 #include "chrome/browser/media/router/issues_observer.h" 17 #include "chrome/browser/media/router/issues_observer.h"
17 #include "chrome/browser/media/router/local_media_routes_observer.h" 18 #include "chrome/browser/media/router/local_media_routes_observer.h"
(...skipping 21 matching lines...) Expand all
39 ConvertToPresentationSessionMessage(interfaces::RouteMessagePtr input) { 40 ConvertToPresentationSessionMessage(interfaces::RouteMessagePtr input) {
40 DCHECK(!input.is_null()); 41 DCHECK(!input.is_null());
41 scoped_ptr<content::PresentationSessionMessage> output; 42 scoped_ptr<content::PresentationSessionMessage> output;
42 switch (input->type) { 43 switch (input->type) {
43 case interfaces::RouteMessage::Type::TYPE_TEXT: { 44 case interfaces::RouteMessage::Type::TYPE_TEXT: {
44 DCHECK(!input->message.is_null()); 45 DCHECK(!input->message.is_null());
45 DCHECK(input->data.is_null()); 46 DCHECK(input->data.is_null());
46 output.reset(new content::PresentationSessionMessage( 47 output.reset(new content::PresentationSessionMessage(
47 content::PresentationMessageType::TEXT)); 48 content::PresentationMessageType::TEXT));
48 input->message.Swap(&output->message); 49 input->message.Swap(&output->message);
49 return output.Pass(); 50 return output;
50 } 51 }
51 case interfaces::RouteMessage::Type::TYPE_BINARY: { 52 case interfaces::RouteMessage::Type::TYPE_BINARY: {
52 DCHECK(!input->data.is_null()); 53 DCHECK(!input->data.is_null());
53 DCHECK(input->message.is_null()); 54 DCHECK(input->message.is_null());
54 output.reset(new content::PresentationSessionMessage( 55 output.reset(new content::PresentationSessionMessage(
55 content::PresentationMessageType::ARRAY_BUFFER)); 56 content::PresentationMessageType::ARRAY_BUFFER));
56 output->data.reset(new std::vector<uint8_t>); 57 output->data.reset(new std::vector<uint8_t>);
57 input->data.Swap(output->data.get()); 58 input->data.Swap(output->data.get());
58 return output.Pass(); 59 return output;
59 } 60 }
60 } 61 }
61 62
62 NOTREACHED() << "Invalid route message type " << input->type; 63 NOTREACHED() << "Invalid route message type " << input->type;
63 return output.Pass(); 64 return output;
64 } 65 }
65 66
66 } // namespace 67 } // namespace
67 68
68 MediaRouterMojoImpl::MediaRouterMediaRoutesObserver:: 69 MediaRouterMojoImpl::MediaRouterMediaRoutesObserver::
69 MediaRouterMediaRoutesObserver(MediaRouterMojoImpl* router) 70 MediaRouterMediaRoutesObserver(MediaRouterMojoImpl* router)
70 : MediaRoutesObserver(router), 71 : MediaRoutesObserver(router),
71 router_(router) { 72 router_(router) {
72 DCHECK(router); 73 DCHECK(router);
73 } 74 }
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 117
117 // static 118 // static
118 void MediaRouterMojoImpl::BindToRequest( 119 void MediaRouterMojoImpl::BindToRequest(
119 const std::string& extension_id, 120 const std::string& extension_id,
120 content::BrowserContext* context, 121 content::BrowserContext* context,
121 mojo::InterfaceRequest<interfaces::MediaRouter> request) { 122 mojo::InterfaceRequest<interfaces::MediaRouter> request) {
122 MediaRouterMojoImpl* impl = static_cast<MediaRouterMojoImpl*>( 123 MediaRouterMojoImpl* impl = static_cast<MediaRouterMojoImpl*>(
123 MediaRouterFactory::GetApiForBrowserContext(context)); 124 MediaRouterFactory::GetApiForBrowserContext(context));
124 DCHECK(impl); 125 DCHECK(impl);
125 126
126 impl->BindToMojoRequest(request.Pass(), extension_id); 127 impl->BindToMojoRequest(std::move(request), extension_id);
127 } 128 }
128 129
129 void MediaRouterMojoImpl::BindToMojoRequest( 130 void MediaRouterMojoImpl::BindToMojoRequest(
130 mojo::InterfaceRequest<interfaces::MediaRouter> request, 131 mojo::InterfaceRequest<interfaces::MediaRouter> request,
131 const std::string& extension_id) { 132 const std::string& extension_id) {
132 DCHECK(thread_checker_.CalledOnValidThread()); 133 DCHECK(thread_checker_.CalledOnValidThread());
133 134
134 binding_.reset( 135 binding_.reset(
135 new mojo::Binding<interfaces::MediaRouter>(this, request.Pass())); 136 new mojo::Binding<interfaces::MediaRouter>(this, std::move(request)));
136 binding_->set_connection_error_handler(base::Bind( 137 binding_->set_connection_error_handler(base::Bind(
137 &MediaRouterMojoImpl::OnConnectionError, base::Unretained(this))); 138 &MediaRouterMojoImpl::OnConnectionError, base::Unretained(this)));
138 139
139 media_route_provider_extension_id_ = extension_id; 140 media_route_provider_extension_id_ = extension_id;
140 } 141 }
141 142
142 void MediaRouterMojoImpl::OnConnectionError() { 143 void MediaRouterMojoImpl::OnConnectionError() {
143 DCHECK(thread_checker_.CalledOnValidThread()); 144 DCHECK(thread_checker_.CalledOnValidThread());
144 145
145 media_route_provider_.reset(); 146 media_route_provider_.reset();
(...skipping 20 matching lines...) Expand all
166 if (event_page_tracker_->IsEventPageSuspended( 167 if (event_page_tracker_->IsEventPageSuspended(
167 media_route_provider_extension_id_)) { 168 media_route_provider_extension_id_)) {
168 DVLOG_WITH_INSTANCE(1) 169 DVLOG_WITH_INSTANCE(1)
169 << "ExecutePendingRequests was called while extension is suspended."; 170 << "ExecutePendingRequests was called while extension is suspended.";
170 media_route_provider_.reset(); 171 media_route_provider_.reset();
171 SetWakeReason(MediaRouteProviderWakeReason::REGISTER_MEDIA_ROUTE_PROVIDER); 172 SetWakeReason(MediaRouteProviderWakeReason::REGISTER_MEDIA_ROUTE_PROVIDER);
172 AttemptWakeEventPage(); 173 AttemptWakeEventPage();
173 return; 174 return;
174 } 175 }
175 176
176 media_route_provider_ = media_route_provider_ptr.Pass(); 177 media_route_provider_ = std::move(media_route_provider_ptr);
177 media_route_provider_.set_connection_error_handler(base::Bind( 178 media_route_provider_.set_connection_error_handler(base::Bind(
178 &MediaRouterMojoImpl::OnConnectionError, base::Unretained(this))); 179 &MediaRouterMojoImpl::OnConnectionError, base::Unretained(this)));
179 callback.Run(instance_id_); 180 callback.Run(instance_id_);
180 ExecutePendingRequests(); 181 ExecutePendingRequests();
181 wakeup_attempt_count_ = 0; 182 wakeup_attempt_count_ = 0;
182 } 183 }
183 184
184 void MediaRouterMojoImpl::OnIssue(const interfaces::IssuePtr issue) { 185 void MediaRouterMojoImpl::OnIssue(const interfaces::IssuePtr issue) {
185 DCHECK(thread_checker_.CalledOnValidThread()); 186 DCHECK(thread_checker_.CalledOnValidThread());
186 DVLOG_WITH_INSTANCE(1) << "OnIssue " << issue->title; 187 DVLOG_WITH_INSTANCE(1) << "OnIssue " << issue->title;
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
345 346
346 void MediaRouterMojoImpl::SendRouteBinaryMessage( 347 void MediaRouterMojoImpl::SendRouteBinaryMessage(
347 const MediaRoute::Id& route_id, 348 const MediaRoute::Id& route_id,
348 scoped_ptr<std::vector<uint8_t>> data, 349 scoped_ptr<std::vector<uint8_t>> data,
349 const SendRouteMessageCallback& callback) { 350 const SendRouteMessageCallback& callback) {
350 DCHECK(thread_checker_.CalledOnValidThread()); 351 DCHECK(thread_checker_.CalledOnValidThread());
351 352
352 SetWakeReason(MediaRouteProviderWakeReason::SEND_SESSION_BINARY_MESSAGE); 353 SetWakeReason(MediaRouteProviderWakeReason::SEND_SESSION_BINARY_MESSAGE);
353 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoSendSessionBinaryMessage, 354 RunOrDefer(base::Bind(&MediaRouterMojoImpl::DoSendSessionBinaryMessage,
354 base::Unretained(this), route_id, 355 base::Unretained(this), route_id,
355 base::Passed(data.Pass()), callback)); 356 base::Passed(std::move(data)), callback));
356 } 357 }
357 358
358 void MediaRouterMojoImpl::AddIssue(const Issue& issue) { 359 void MediaRouterMojoImpl::AddIssue(const Issue& issue) {
359 DCHECK(thread_checker_.CalledOnValidThread()); 360 DCHECK(thread_checker_.CalledOnValidThread());
360 issue_manager_.AddIssue(issue); 361 issue_manager_.AddIssue(issue);
361 } 362 }
362 363
363 void MediaRouterMojoImpl::ClearIssue(const Issue::Id& issue_id) { 364 void MediaRouterMojoImpl::ClearIssue(const Issue::Id& issue_id) {
364 DCHECK(thread_checker_.CalledOnValidThread()); 365 DCHECK(thread_checker_.CalledOnValidThread());
365 issue_manager_.ClearIssue(issue_id); 366 issue_manager_.ClearIssue(issue_id);
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
571 media_route_provider_->SendRouteMessage(route_id, message, callback); 572 media_route_provider_->SendRouteMessage(route_id, message, callback);
572 } 573 }
573 574
574 void MediaRouterMojoImpl::DoSendSessionBinaryMessage( 575 void MediaRouterMojoImpl::DoSendSessionBinaryMessage(
575 const MediaRoute::Id& route_id, 576 const MediaRoute::Id& route_id,
576 scoped_ptr<std::vector<uint8_t>> data, 577 scoped_ptr<std::vector<uint8_t>> data,
577 const SendRouteMessageCallback& callback) { 578 const SendRouteMessageCallback& callback) {
578 DVLOG_WITH_INSTANCE(1) << "SendRouteBinaryMessage " << route_id; 579 DVLOG_WITH_INSTANCE(1) << "SendRouteBinaryMessage " << route_id;
579 mojo::Array<uint8_t> mojo_array; 580 mojo::Array<uint8_t> mojo_array;
580 mojo_array.Swap(data.get()); 581 mojo_array.Swap(data.get());
581 media_route_provider_->SendRouteBinaryMessage(route_id, mojo_array.Pass(), 582 media_route_provider_->SendRouteBinaryMessage(route_id, std::move(mojo_array),
582 callback); 583 callback);
583 } 584 }
584 585
585 void MediaRouterMojoImpl::DoListenForRouteMessages( 586 void MediaRouterMojoImpl::DoListenForRouteMessages(
586 const MediaRoute::Id& route_id) { 587 const MediaRoute::Id& route_id) {
587 DVLOG_WITH_INSTANCE(1) << "ListenForRouteMessages"; 588 DVLOG_WITH_INSTANCE(1) << "ListenForRouteMessages";
588 if (!ContainsValue(route_ids_listening_for_messages_, route_id)) { 589 if (!ContainsValue(route_ids_listening_for_messages_, route_id)) {
589 route_ids_listening_for_messages_.insert(route_id); 590 route_ids_listening_for_messages_.insert(route_id);
590 media_route_provider_->ListenForRouteMessages( 591 media_route_provider_->ListenForRouteMessages(
591 route_id, base::Bind(&MediaRouterMojoImpl::OnRouteMessagesReceived, 592 route_id, base::Bind(&MediaRouterMojoImpl::OnRouteMessagesReceived,
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
626 } 627 }
627 628
628 // If |messages| is empty, then |StopListeningForRouteMessages| was invoked 629 // If |messages| is empty, then |StopListeningForRouteMessages| was invoked
629 // but we have added back an observer since. Keep listening for more messages, 630 // but we have added back an observer since. Keep listening for more messages,
630 // but do not notify observers with empty list. 631 // but do not notify observers with empty list.
631 if (!messages.storage().empty()) { 632 if (!messages.storage().empty()) {
632 ScopedVector<content::PresentationSessionMessage> session_messages; 633 ScopedVector<content::PresentationSessionMessage> session_messages;
633 session_messages.reserve(messages.size()); 634 session_messages.reserve(messages.size());
634 for (size_t i = 0; i < messages.size(); ++i) { 635 for (size_t i = 0; i < messages.size(); ++i) {
635 session_messages.push_back( 636 session_messages.push_back(
636 ConvertToPresentationSessionMessage(messages[i].Pass()).Pass()); 637 ConvertToPresentationSessionMessage(std::move(messages[i])));
637 } 638 }
638 base::ObserverList<PresentationSessionMessagesObserver>::Iterator 639 base::ObserverList<PresentationSessionMessagesObserver>::Iterator
639 observer_it(observer_list); 640 observer_it(observer_list);
640 bool single_observer = 641 bool single_observer =
641 observer_it.GetNext() != nullptr && observer_it.GetNext() == nullptr; 642 observer_it.GetNext() != nullptr && observer_it.GetNext() == nullptr;
642 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list, 643 FOR_EACH_OBSERVER(PresentationSessionMessagesObserver, *observer_list,
643 OnMessagesReceived(session_messages, single_observer)); 644 OnMessagesReceived(session_messages, single_observer));
644 } 645 }
645 646
646 // Listen for more messages. 647 // Listen for more messages.
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
830 if (current_wake_reason_ == MediaRouteProviderWakeReason::TOTAL_COUNT) 831 if (current_wake_reason_ == MediaRouteProviderWakeReason::TOTAL_COUNT)
831 current_wake_reason_ = reason; 832 current_wake_reason_ = reason;
832 } 833 }
833 834
834 void MediaRouterMojoImpl::ClearWakeReason() { 835 void MediaRouterMojoImpl::ClearWakeReason() {
835 DCHECK(current_wake_reason_ != MediaRouteProviderWakeReason::TOTAL_COUNT); 836 DCHECK(current_wake_reason_ != MediaRouteProviderWakeReason::TOTAL_COUNT);
836 current_wake_reason_ = MediaRouteProviderWakeReason::TOTAL_COUNT; 837 current_wake_reason_ = MediaRouteProviderWakeReason::TOTAL_COUNT;
837 } 838 }
838 839
839 } // namespace media_router 840 } // namespace media_router
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698