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

Side by Side Diff: media/mojo/services/mojo_media_application.cc

Issue 1674903003: Extract shell methods from ApplicationImpl into a base class, and pass this to Initialize() instead. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mojom
Patch Set: . Created 4 years, 10 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
« no previous file with comments | « media/mojo/services/mojo_media_application.h ('k') | media/test/pipeline_integration_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "media/mojo/services/mojo_media_application.h" 5 #include "media/mojo/services/mojo_media_application.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "media/base/media_log.h" 9 #include "media/base/media_log.h"
10 #include "media/mojo/services/mojo_media_client.h" 10 #include "media/mojo/services/mojo_media_client.h"
11 #include "media/mojo/services/service_factory_impl.h" 11 #include "media/mojo/services/service_factory_impl.h"
12 #include "mojo/shell/public/cpp/application_connection.h" 12 #include "mojo/shell/public/cpp/application_connection.h"
13 #include "mojo/shell/public/cpp/application_impl.h" 13 #include "mojo/shell/public/cpp/shell.h"
14 14
15 namespace media { 15 namespace media {
16 16
17 // static 17 // static
18 scoped_ptr<mojo::ApplicationDelegate> MojoMediaApplication::CreateApp() { 18 scoped_ptr<mojo::ApplicationDelegate> MojoMediaApplication::CreateApp() {
19 return scoped_ptr<mojo::ApplicationDelegate>( 19 return scoped_ptr<mojo::ApplicationDelegate>(
20 new MojoMediaApplication(MojoMediaClient::Create())); 20 new MojoMediaApplication(MojoMediaClient::Create()));
21 } 21 }
22 22
23 // TODO(xhwang): Hook up MediaLog when possible. 23 // TODO(xhwang): Hook up MediaLog when possible.
24 MojoMediaApplication::MojoMediaApplication( 24 MojoMediaApplication::MojoMediaApplication(
25 scoped_ptr<MojoMediaClient> mojo_media_client) 25 scoped_ptr<MojoMediaClient> mojo_media_client)
26 : mojo_media_client_(std::move(mojo_media_client)), 26 : mojo_media_client_(std::move(mojo_media_client)),
27 app_impl_(nullptr), 27 shell_(nullptr),
28 media_log_(new MediaLog()) {} 28 media_log_(new MediaLog()) {}
29 29
30 MojoMediaApplication::~MojoMediaApplication() { 30 MojoMediaApplication::~MojoMediaApplication() {
31 } 31 }
32 32
33 void MojoMediaApplication::Initialize(mojo::ApplicationImpl* app) { 33 void MojoMediaApplication::Initialize(mojo::Shell* shell,
34 app_impl_ = app; 34 const std::string& url,
35 uint32_t id) {
36 shell_ = shell;
35 mojo_media_client_->Initialize(); 37 mojo_media_client_->Initialize();
36 } 38 }
37 39
38 bool MojoMediaApplication::AcceptConnection( 40 bool MojoMediaApplication::AcceptConnection(
39 mojo::ApplicationConnection* connection) { 41 mojo::ApplicationConnection* connection) {
40 connection->AddService<interfaces::ServiceFactory>(this); 42 connection->AddService<interfaces::ServiceFactory>(this);
41 return true; 43 return true;
42 } 44 }
43 45
44 void MojoMediaApplication::Create( 46 void MojoMediaApplication::Create(
45 mojo::ApplicationConnection* connection, 47 mojo::ApplicationConnection* connection,
46 mojo::InterfaceRequest<interfaces::ServiceFactory> request) { 48 mojo::InterfaceRequest<interfaces::ServiceFactory> request) {
47 // The created object is owned by the pipe. 49 // The created object is owned by the pipe.
48 new ServiceFactoryImpl(std::move(request), connection->GetServiceProvider(), 50 new ServiceFactoryImpl(std::move(request), connection->GetServiceProvider(),
49 media_log_, 51 media_log_, shell_->CreateAppRefCount(),
50 app_impl_->app_lifetime_helper()->CreateAppRefCount(),
51 mojo_media_client_.get()); 52 mojo_media_client_.get());
52 } 53 }
53 54
54 } // namespace media 55 } // namespace media
OLDNEW
« no previous file with comments | « media/mojo/services/mojo_media_application.h ('k') | media/test/pipeline_integration_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698