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

Side by Side Diff: components/leveldb/leveldb_app.cc

Issue 2795883002: Eliminate OnConnect usage (Closed)
Patch Set: . Created 3 years, 8 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 | « components/leveldb/leveldb_app.h ('k') | components/nacl/common/nacl_service.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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/leveldb/leveldb_app.h" 5 #include "components/leveldb/leveldb_app.h"
6 6
7 #include "components/leveldb/leveldb_service_impl.h" 7 #include "components/leveldb/leveldb_service_impl.h"
8 #include "services/service_manager/public/cpp/interface_registry.h"
9 #include "services/service_manager/public/cpp/service_context.h" 8 #include "services/service_manager/public/cpp/service_context.h"
10 9
11 namespace leveldb { 10 namespace leveldb {
12 11
13 LevelDBApp::LevelDBApp() : file_thread_("LevelDBFile") {} 12 LevelDBApp::LevelDBApp() : file_thread_("LevelDBFile") {
13 registry_.AddInterface<mojom::LevelDBService>(this);
14 }
14 15
15 LevelDBApp::~LevelDBApp() {} 16 LevelDBApp::~LevelDBApp() {}
16 17
17 void LevelDBApp::OnStart() { 18 void LevelDBApp::OnStart() {
18 tracing_.Initialize(context()->connector(), context()->identity().name()); 19 tracing_.Initialize(context()->connector(), context()->identity().name());
19 } 20 }
20 21
21 bool LevelDBApp::OnConnect(const service_manager::ServiceInfo& remote_info, 22 void LevelDBApp::OnBindInterface(
22 service_manager::InterfaceRegistry* registry) { 23 const service_manager::ServiceInfo& source_info,
23 registry->AddInterface<mojom::LevelDBService>(this); 24 const std::string& interface_name,
24 return true; 25 mojo::ScopedMessagePipeHandle interface_pipe) {
26 registry_.BindInterface(source_info.identity, interface_name,
27 std::move(interface_pipe));
25 } 28 }
26 29
27 void LevelDBApp::Create(const service_manager::Identity& remote_identity, 30 void LevelDBApp::Create(const service_manager::Identity& remote_identity,
28 leveldb::mojom::LevelDBServiceRequest request) { 31 leveldb::mojom::LevelDBServiceRequest request) {
29 if (!service_) { 32 if (!service_) {
30 if (!file_thread_.IsRunning()) 33 if (!file_thread_.IsRunning())
31 file_thread_.Start(); 34 file_thread_.Start();
32 service_.reset( 35 service_.reset(
33 new LevelDBServiceImpl(file_thread_.message_loop()->task_runner())); 36 new LevelDBServiceImpl(file_thread_.message_loop()->task_runner()));
34 } 37 }
35 bindings_.AddBinding(service_.get(), std::move(request)); 38 bindings_.AddBinding(service_.get(), std::move(request));
36 } 39 }
37 40
38 } // namespace leveldb 41 } // namespace leveldb
OLDNEW
« no previous file with comments | « components/leveldb/leveldb_app.h ('k') | components/nacl/common/nacl_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698