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

Side by Side Diff: content/browser/indexed_db/leveldb/leveldb_database.cc

Issue 1545243002: Convert Pass()→std::move() in //content/browser (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "content/browser/indexed_db/leveldb/leveldb_database.h" 5 #include "content/browser/indexed_db/leveldb/leveldb_database.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8
9 #include <cerrno> 8 #include <cerrno>
9 #include <utility>
10 10
11 #include "base/files/file.h" 11 #include "base/files/file.h"
12 #include "base/logging.h" 12 #include "base/logging.h"
13 #include "base/macros.h" 13 #include "base/macros.h"
14 #include "base/memory/scoped_ptr.h" 14 #include "base/memory/scoped_ptr.h"
15 #include "base/metrics/histogram.h" 15 #include "base/metrics/histogram.h"
16 #include "base/strings/string16.h" 16 #include "base/strings/string16.h"
17 #include "base/strings/string_piece.h" 17 #include "base/strings/string_piece.h"
18 #include "base/strings/stringprintf.h" 18 #include "base/strings/stringprintf.h"
19 #include "base/strings/utf_string_conversions.h" 19 #include "base/strings/utf_string_conversions.h"
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after
301 return s; 301 return s;
302 } 302 }
303 303
304 UMA_HISTOGRAM_MEDIUM_TIMES("WebCore.IndexedDB.LevelDB.OpenTime", 304 UMA_HISTOGRAM_MEDIUM_TIMES("WebCore.IndexedDB.LevelDB.OpenTime",
305 base::TimeTicks::Now() - begin_time); 305 base::TimeTicks::Now() - begin_time);
306 306
307 CheckFreeSpace("Success", file_name); 307 CheckFreeSpace("Success", file_name);
308 308
309 (*result).reset(new LevelDBDatabase); 309 (*result).reset(new LevelDBDatabase);
310 (*result)->db_ = make_scoped_ptr(db); 310 (*result)->db_ = make_scoped_ptr(db);
311 (*result)->comparator_adapter_ = comparator_adapter.Pass(); 311 (*result)->comparator_adapter_ = std::move(comparator_adapter);
312 (*result)->comparator_ = comparator; 312 (*result)->comparator_ = comparator;
313 (*result)->filter_policy_ = filter_policy.Pass(); 313 (*result)->filter_policy_ = std::move(filter_policy);
314 314
315 return s; 315 return s;
316 } 316 }
317 317
318 scoped_ptr<LevelDBDatabase> LevelDBDatabase::OpenInMemory( 318 scoped_ptr<LevelDBDatabase> LevelDBDatabase::OpenInMemory(
319 const LevelDBComparator* comparator) { 319 const LevelDBComparator* comparator) {
320 scoped_ptr<ComparatorAdapter> comparator_adapter( 320 scoped_ptr<ComparatorAdapter> comparator_adapter(
321 new ComparatorAdapter(comparator)); 321 new ComparatorAdapter(comparator));
322 scoped_ptr<leveldb::Env> in_memory_env(leveldb::NewMemEnv(LevelDBEnv::Get())); 322 scoped_ptr<leveldb::Env> in_memory_env(leveldb::NewMemEnv(LevelDBEnv::Get()));
323 323
324 leveldb::DB* db; 324 leveldb::DB* db;
325 scoped_ptr<const leveldb::FilterPolicy> filter_policy; 325 scoped_ptr<const leveldb::FilterPolicy> filter_policy;
326 const leveldb::Status s = OpenDB(comparator_adapter.get(), 326 const leveldb::Status s = OpenDB(comparator_adapter.get(),
327 in_memory_env.get(), 327 in_memory_env.get(),
328 base::FilePath(), 328 base::FilePath(),
329 &db, 329 &db,
330 &filter_policy); 330 &filter_policy);
331 331
332 if (!s.ok()) { 332 if (!s.ok()) {
333 LOG(ERROR) << "Failed to open in-memory LevelDB database: " << s.ToString(); 333 LOG(ERROR) << "Failed to open in-memory LevelDB database: " << s.ToString();
334 return scoped_ptr<LevelDBDatabase>(); 334 return scoped_ptr<LevelDBDatabase>();
335 } 335 }
336 336
337 scoped_ptr<LevelDBDatabase> result(new LevelDBDatabase); 337 scoped_ptr<LevelDBDatabase> result(new LevelDBDatabase);
338 result->env_ = in_memory_env.Pass(); 338 result->env_ = std::move(in_memory_env);
339 result->db_ = make_scoped_ptr(db); 339 result->db_ = make_scoped_ptr(db);
340 result->comparator_adapter_ = comparator_adapter.Pass(); 340 result->comparator_adapter_ = std::move(comparator_adapter);
341 result->comparator_ = comparator; 341 result->comparator_ = comparator;
342 result->filter_policy_ = filter_policy.Pass(); 342 result->filter_policy_ = std::move(filter_policy);
343 343
344 return result.Pass(); 344 return result;
345 } 345 }
346 346
347 leveldb::Status LevelDBDatabase::Put(const StringPiece& key, 347 leveldb::Status LevelDBDatabase::Put(const StringPiece& key,
348 std::string* value) { 348 std::string* value) {
349 base::TimeTicks begin_time = base::TimeTicks::Now(); 349 base::TimeTicks begin_time = base::TimeTicks::Now();
350 350
351 leveldb::WriteOptions write_options; 351 leveldb::WriteOptions write_options;
352 write_options.sync = kSyncWrites; 352 write_options.sync = kSyncWrites;
353 353
354 const leveldb::Status s = 354 const leveldb::Status s =
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 412
413 scoped_ptr<LevelDBIterator> LevelDBDatabase::CreateIterator( 413 scoped_ptr<LevelDBIterator> LevelDBDatabase::CreateIterator(
414 const LevelDBSnapshot* snapshot) { 414 const LevelDBSnapshot* snapshot) {
415 leveldb::ReadOptions read_options; 415 leveldb::ReadOptions read_options;
416 read_options.verify_checksums = true; // TODO(jsbell): Disable this if the 416 read_options.verify_checksums = true; // TODO(jsbell): Disable this if the
417 // performance impact is too great. 417 // performance impact is too great.
418 read_options.snapshot = snapshot ? snapshot->snapshot_ : 0; 418 read_options.snapshot = snapshot ? snapshot->snapshot_ : 0;
419 419
420 scoped_ptr<leveldb::Iterator> i(db_->NewIterator(read_options)); 420 scoped_ptr<leveldb::Iterator> i(db_->NewIterator(read_options));
421 return scoped_ptr<LevelDBIterator>( 421 return scoped_ptr<LevelDBIterator>(
422 IndexedDBClassFactory::Get()->CreateIteratorImpl(i.Pass())); 422 IndexedDBClassFactory::Get()->CreateIteratorImpl(std::move(i)));
423 } 423 }
424 424
425 const LevelDBComparator* LevelDBDatabase::Comparator() const { 425 const LevelDBComparator* LevelDBDatabase::Comparator() const {
426 return comparator_; 426 return comparator_;
427 } 427 }
428 428
429 void LevelDBDatabase::Compact(const base::StringPiece& start, 429 void LevelDBDatabase::Compact(const base::StringPiece& start,
430 const base::StringPiece& stop) { 430 const base::StringPiece& stop) {
431 IDB_TRACE("LevelDBDatabase::Compact"); 431 IDB_TRACE("LevelDBDatabase::Compact");
432 const leveldb::Slice start_slice = MakeSlice(start); 432 const leveldb::Slice start_slice = MakeSlice(start);
433 const leveldb::Slice stop_slice = MakeSlice(stop); 433 const leveldb::Slice stop_slice = MakeSlice(stop);
434 // NULL batch means just wait for earlier writes to be done 434 // NULL batch means just wait for earlier writes to be done
435 db_->Write(leveldb::WriteOptions(), NULL); 435 db_->Write(leveldb::WriteOptions(), NULL);
436 db_->CompactRange(&start_slice, &stop_slice); 436 db_->CompactRange(&start_slice, &stop_slice);
437 } 437 }
438 438
439 void LevelDBDatabase::CompactAll() { db_->CompactRange(NULL, NULL); } 439 void LevelDBDatabase::CompactAll() { db_->CompactRange(NULL, NULL); }
440 440
441 } // namespace content 441 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/indexed_db/indexed_db_unittest.cc ('k') | content/browser/indexed_db/leveldb/leveldb_iterator_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698