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

Unified Diff: content/browser/leveldb_wrapper_impl.cc

Issue 1923673002: Run the DOMStorageBrowserTest.SanityCheck against the mojo based implementation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/browser/leveldb_wrapper_impl.h ('k') | content/public/common/content_switches.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/leveldb_wrapper_impl.cc
diff --git a/content/browser/leveldb_wrapper_impl.cc b/content/browser/leveldb_wrapper_impl.cc
index 020c40c6a069bf022ac4c99f7c6fcccc2870af95..3d15512ecabbf5b1a691be3cb1d6680d60c7373f 100644
--- a/content/browser/leveldb_wrapper_impl.cc
+++ b/content/browser/leveldb_wrapper_impl.cc
@@ -88,10 +88,9 @@ void LevelDBWrapperImpl::Put(mojo::Array<uint8_t> key,
const mojo::String& source,
const PutCallback& callback) {
if (!map_) {
- on_load_complete_tasks_.push_back(
+ LoadMap(
base::Bind(&LevelDBWrapperImpl::Put, base::Unretained(this),
base::Passed(&key), base::Passed(&value), source, callback));
- LoadMap();
return;
}
@@ -146,10 +145,9 @@ void LevelDBWrapperImpl::Delete(mojo::Array<uint8_t> key,
const mojo::String& source,
const DeleteCallback& callback) {
if (!map_) {
- on_load_complete_tasks_.push_back(
+ LoadMap(
base::Bind(&LevelDBWrapperImpl::Delete, base::Unretained(this),
base::Passed(&key), source, callback));
- LoadMap();
return;
}
@@ -178,10 +176,9 @@ void LevelDBWrapperImpl::Delete(mojo::Array<uint8_t> key,
void LevelDBWrapperImpl::DeleteAll(const mojo::String& source,
const DeleteAllCallback& callback) {
if (!map_) {
- on_load_complete_tasks_.push_back(
+ LoadMap(
base::Bind(&LevelDBWrapperImpl::DeleteAll, base::Unretained(this),
source, callback));
- LoadMap();
return;
}
@@ -202,10 +199,9 @@ void LevelDBWrapperImpl::DeleteAll(const mojo::String& source,
void LevelDBWrapperImpl::Get(mojo::Array<uint8_t> key,
const GetCallback& callback) {
if (!map_) {
- on_load_complete_tasks_.push_back(
+ LoadMap(
base::Bind(&LevelDBWrapperImpl::Get, base::Unretained(this),
base::Passed(&key), callback));
- LoadMap();
return;
}
@@ -220,10 +216,9 @@ void LevelDBWrapperImpl::Get(mojo::Array<uint8_t> key,
void LevelDBWrapperImpl::GetAll(const mojo::String& source,
const GetAllCallback& callback) {
if (!map_) {
- on_load_complete_tasks_.push_back(
+ LoadMap(
base::Bind(&LevelDBWrapperImpl::GetAll, base::Unretained(this),
source, callback));
- LoadMap();
return;
}
@@ -247,9 +242,13 @@ void LevelDBWrapperImpl::OnConnectionError() {
no_bindings_callback_.Run();
}
-void LevelDBWrapperImpl::LoadMap() {
- // TODO(michaeln): Import from sqlite localstorage db.
+void LevelDBWrapperImpl::LoadMap(const base::Closure& completion_callback) {
DCHECK(!map_);
+ on_load_complete_tasks_.push_back(completion_callback);
+ if (on_load_complete_tasks_.size() > 1)
+ return;
+
+ // TODO(michaeln): Import from sqlite localstorage db.
database_->GetPrefixed(mojo::Array<uint8_t>::From(prefix_),
base::Bind(&LevelDBWrapperImpl::OnLoadComplete,
weak_ptr_factory_.GetWeakPtr()));
« no previous file with comments | « content/browser/leveldb_wrapper_impl.h ('k') | content/public/common/content_switches.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698