OLD | NEW |
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_service_impl.h" | 5 #include "components/leveldb/leveldb_service_impl.h" |
6 | 6 |
7 #include "components/leveldb/env_mojo.h" | 7 #include "components/leveldb/env_mojo.h" |
8 #include "components/leveldb/leveldb_database_impl.h" | 8 #include "components/leveldb/leveldb_database_impl.h" |
9 #include "components/leveldb/util.h" | 9 #include "components/leveldb/util.h" |
| 10 #include "mojo/shell/public/cpp/message_loop_ref.h" |
10 #include "third_party/leveldatabase/env_chromium.h" | 11 #include "third_party/leveldatabase/env_chromium.h" |
11 #include "third_party/leveldatabase/src/include/leveldb/db.h" | 12 #include "third_party/leveldatabase/src/include/leveldb/db.h" |
12 #include "third_party/leveldatabase/src/include/leveldb/env.h" | 13 #include "third_party/leveldatabase/src/include/leveldb/env.h" |
13 #include "third_party/leveldatabase/src/include/leveldb/filter_policy.h" | 14 #include "third_party/leveldatabase/src/include/leveldb/filter_policy.h" |
14 #include "third_party/leveldatabase/src/include/leveldb/slice.h" | 15 #include "third_party/leveldatabase/src/include/leveldb/slice.h" |
15 | 16 |
16 namespace leveldb { | 17 namespace leveldb { |
17 | 18 |
18 LevelDBServiceImpl::LevelDBServiceImpl() | 19 LevelDBServiceImpl::LevelDBServiceImpl(scoped_ptr<mojo::MessageLoopRef> ref) |
19 : thread_(new LevelDBFileThread) { | 20 : message_loop_ref_(std::move(ref)), |
20 } | 21 thread_(new LevelDBFileThread) {} |
21 | 22 |
22 LevelDBServiceImpl::~LevelDBServiceImpl() {} | 23 LevelDBServiceImpl::~LevelDBServiceImpl() {} |
23 | 24 |
24 void LevelDBServiceImpl::Open(filesystem::DirectoryPtr directory, | 25 void LevelDBServiceImpl::Open(filesystem::DirectoryPtr directory, |
25 const mojo::String& dbname, | 26 const mojo::String& dbname, |
26 mojo::InterfaceRequest<LevelDBDatabase> database, | 27 mojo::InterfaceRequest<LevelDBDatabase> database, |
27 const OpenCallback& callback) { | 28 const OpenCallback& callback) { |
28 // This is the place where we open a database. | 29 // This is the place where we open a database. |
29 leveldb::Options options; | 30 leveldb::Options options; |
30 options.create_if_missing = true; | 31 options.create_if_missing = true; |
(...skipping 18 matching lines...) Expand all Loading... |
49 | 50 |
50 if (s.ok()) { | 51 if (s.ok()) { |
51 new LevelDBDatabaseImpl(std::move(database), std::move(env_mojo), | 52 new LevelDBDatabaseImpl(std::move(database), std::move(env_mojo), |
52 scoped_ptr<leveldb::DB>(db)); | 53 scoped_ptr<leveldb::DB>(db)); |
53 } | 54 } |
54 | 55 |
55 callback.Run(LeveldbStatusToError(s)); | 56 callback.Run(LeveldbStatusToError(s)); |
56 } | 57 } |
57 | 58 |
58 } // namespace leveldb | 59 } // namespace leveldb |
OLD | NEW |