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

Side by Side Diff: components/resource_provider/resource_provider_app.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
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 "components/resource_provider/resource_provider_app.h" 5 #include "components/resource_provider/resource_provider_app.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "components/resource_provider/file_utils.h" 9 #include "components/resource_provider/file_utils.h"
10 #include "components/resource_provider/resource_provider_impl.h" 10 #include "components/resource_provider/resource_provider_impl.h"
11 #include "mojo/shell/public/cpp/application_connection.h" 11 #include "mojo/shell/public/cpp/application_connection.h"
12 #include "url/gurl.h" 12 #include "url/gurl.h"
13 13
14 namespace resource_provider { 14 namespace resource_provider {
15 15
16 ResourceProviderApp::ResourceProviderApp( 16 ResourceProviderApp::ResourceProviderApp(
17 const std::string& resource_provider_app_url) 17 const std::string& resource_provider_app_url)
18 : resource_provider_app_url_(resource_provider_app_url) { 18 : resource_provider_app_url_(resource_provider_app_url) {
19 } 19 }
20 20
21 ResourceProviderApp::~ResourceProviderApp() { 21 ResourceProviderApp::~ResourceProviderApp() {
22 } 22 }
23 23
24 void ResourceProviderApp::Initialize(mojo::ApplicationImpl* app) { 24 void ResourceProviderApp::Initialize(mojo::Shell* shell, const std::string& url,
25 tracing_.Initialize(app); 25 uint32_t id) {
26 tracing_.Initialize(shell, url);
26 } 27 }
27 28
28 bool ResourceProviderApp::AcceptConnection( 29 bool ResourceProviderApp::AcceptConnection(
29 mojo::ApplicationConnection* connection) { 30 mojo::ApplicationConnection* connection) {
30 const base::FilePath app_path( 31 const base::FilePath app_path(
31 GetPathForApplicationUrl(connection->GetRemoteApplicationURL())); 32 GetPathForApplicationUrl(connection->GetRemoteApplicationURL()));
32 if (app_path.empty()) 33 if (app_path.empty())
33 return false; // The specified app has no resources. 34 return false; // The specified app has no resources.
34 35
35 connection->AddService<ResourceProvider>(this); 36 connection->AddService<ResourceProvider>(this);
36 return true; 37 return true;
37 } 38 }
38 39
39 void ResourceProviderApp::Create( 40 void ResourceProviderApp::Create(
40 mojo::ApplicationConnection* connection, 41 mojo::ApplicationConnection* connection,
41 mojo::InterfaceRequest<ResourceProvider> request) { 42 mojo::InterfaceRequest<ResourceProvider> request) {
42 const base::FilePath app_path( 43 const base::FilePath app_path(
43 GetPathForApplicationUrl(connection->GetRemoteApplicationURL())); 44 GetPathForApplicationUrl(connection->GetRemoteApplicationURL()));
44 // We validated path at AcceptConnection() time, so it should still 45 // We validated path at AcceptConnection() time, so it should still
45 // be valid. 46 // be valid.
46 CHECK(!app_path.empty()); 47 CHECK(!app_path.empty());
47 bindings_.AddBinding( 48 bindings_.AddBinding(
48 new ResourceProviderImpl(app_path, resource_provider_app_url_), 49 new ResourceProviderImpl(app_path, resource_provider_app_url_),
49 std::move(request)); 50 std::move(request));
50 } 51 }
51 52
52 } // namespace resource_provider 53 } // namespace resource_provider
OLDNEW
« no previous file with comments | « components/resource_provider/resource_provider_app.h ('k') | components/resource_provider/resource_provider_apptest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698