Commit 1014cd6b authored by lethalantidote's avatar lethalantidote Committed by Commit bot

Removes ScopedVector from presentation_service_impl.

Removes ScopedVector in favor of vector<unique_ptr>  in presentation_service_impl and related files as requested in Avi's
comment in https://codereview.chromium.org/2562603002/

BUG=554289

Review-Url: https://codereview.chromium.org/2574673002
Cr-Commit-Position: refs/heads/master@{#439052}
parent f0983129
...@@ -92,16 +92,17 @@ class PresentationSessionMessagesObserver : public RouteMessageObserver { ...@@ -92,16 +92,17 @@ class PresentationSessionMessagesObserver : public RouteMessageObserver {
void OnMessagesReceived(const std::vector<RouteMessage>& messages) final { void OnMessagesReceived(const std::vector<RouteMessage>& messages) final {
DVLOG(2) << __func__ << ", number of messages : " << messages.size(); DVLOG(2) << __func__ << ", number of messages : " << messages.size();
ScopedVector<content::PresentationConnectionMessage> presentation_messages; std::vector<std::unique_ptr<content::PresentationConnectionMessage>>
presentation_messages;
for (const RouteMessage& message : messages) { for (const RouteMessage& message : messages) {
if (message.type == RouteMessage::TEXT && message.text) { if (message.type == RouteMessage::TEXT && message.text) {
presentation_messages.push_back( presentation_messages.push_back(
new content::PresentationConnectionMessage( base::MakeUnique<content::PresentationConnectionMessage>(
content::PresentationMessageType::TEXT)); content::PresentationMessageType::TEXT));
presentation_messages.back()->message = *message.text; presentation_messages.back()->message = *message.text;
} else if (message.type == RouteMessage::BINARY && message.binary) { } else if (message.type == RouteMessage::BINARY && message.binary) {
presentation_messages.push_back( presentation_messages.push_back(
new content::PresentationConnectionMessage( base::MakeUnique<content::PresentationConnectionMessage>(
content::PresentationMessageType::BINARY)); content::PresentationMessageType::BINARY));
presentation_messages.back()->data.reset( presentation_messages.back()->data.reset(
new std::vector<uint8_t>(*message.binary)); new std::vector<uint8_t>(*message.binary));
......
...@@ -455,17 +455,19 @@ void PresentationServiceImpl::ListenForConnectionMessages( ...@@ -455,17 +455,19 @@ void PresentationServiceImpl::ListenForConnectionMessages(
void PresentationServiceImpl::OnConnectionMessages( void PresentationServiceImpl::OnConnectionMessages(
const PresentationSessionInfo& session, const PresentationSessionInfo& session,
const ScopedVector<PresentationConnectionMessage>& messages, const std::vector<std::unique_ptr<PresentationConnectionMessage>>& messages,
bool pass_ownership) { bool pass_ownership) {
DCHECK(client_); DCHECK(client_);
DVLOG(2) << "OnConnectionMessages"; DVLOG(2) << "OnConnectionMessages";
std::vector<blink::mojom::ConnectionMessagePtr> mojo_messages( std::vector<blink::mojom::ConnectionMessagePtr> mojo_messages(
messages.size()); messages.size());
std::transform(messages.begin(), messages.end(), mojo_messages.begin(), std::transform(
[pass_ownership](PresentationConnectionMessage* message) { messages.begin(), messages.end(), mojo_messages.begin(),
return ToMojoConnectionMessage(message, pass_ownership); [pass_ownership](
}); const std::unique_ptr<PresentationConnectionMessage>& message) {
return ToMojoConnectionMessage(message.get(), pass_ownership);
});
client_->OnConnectionMessagesReceived( client_->OnConnectionMessagesReceived(
blink::mojom::PresentationSessionInfo::From(session), blink::mojom::PresentationSessionInfo::From(session),
......
...@@ -232,7 +232,8 @@ class CONTENT_EXPORT PresentationServiceImpl ...@@ -232,7 +232,8 @@ class CONTENT_EXPORT PresentationServiceImpl
// later invocation when session messages arrive. // later invocation when session messages arrive.
void OnConnectionMessages( void OnConnectionMessages(
const content::PresentationSessionInfo& session, const content::PresentationSessionInfo& session,
const ScopedVector<PresentationConnectionMessage>& messages, const std::vector<std::unique_ptr<PresentationConnectionMessage>>&
messages,
bool pass_ownership); bool pass_ownership);
// Associates a JoinSession |callback| with a unique request ID and // Associates a JoinSession |callback| with a unique request ID and
......
...@@ -351,7 +351,7 @@ class PresentationServiceImplTest : public RenderViewHostImplTestHarness { ...@@ -351,7 +351,7 @@ class PresentationServiceImplTest : public RenderViewHostImplTestHarness {
run_loop.Run(); run_loop.Run();
} }
ScopedVector<PresentationConnectionMessage> messages; std::vector<std::unique_ptr<PresentationConnectionMessage>> messages;
std::unique_ptr<content::PresentationConnectionMessage> message; std::unique_ptr<content::PresentationConnectionMessage> message;
message.reset(new content::PresentationConnectionMessage( message.reset(new content::PresentationConnectionMessage(
PresentationMessageType::TEXT)); PresentationMessageType::TEXT));
......
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
#include <vector> #include <vector>
#include "base/callback.h" #include "base/callback.h"
#include "base/memory/scoped_vector.h"
#include "content/common/content_export.h" #include "content/common/content_export.h"
#include "content/public/browser/presentation_connection_message.h" #include "content/public/browser/presentation_connection_message.h"
#include "content/public/browser/presentation_session.h" #include "content/public/browser/presentation_session.h"
...@@ -29,8 +28,9 @@ using PresentationSessionErrorCallback = ...@@ -29,8 +28,9 @@ using PresentationSessionErrorCallback =
// Param #0: a vector of messages that are received. // Param #0: a vector of messages that are received.
// Param #1: tells the callback handler that it may reuse strings or buffers // Param #1: tells the callback handler that it may reuse strings or buffers
// in the messages contained within param #0. // in the messages contained within param #0.
using PresentationConnectionMessageCallback = base::Callback< using PresentationConnectionMessageCallback = base::Callback<void(
void(const ScopedVector<content::PresentationConnectionMessage>&, bool)>; const std::vector<std::unique_ptr<content::PresentationConnectionMessage>>&,
bool)>;
struct PresentationConnectionStateChangeInfo { struct PresentationConnectionStateChangeInfo {
explicit PresentationConnectionStateChangeInfo( explicit PresentationConnectionStateChangeInfo(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment