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

Side by Side Diff: components/webdata/common/web_data_service_backend.cc

Issue 14081043: Hook up Autofill Backend interface to SyncableServices (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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 "components/webdata/common/web_data_service_backend.h" 5 #include "components/webdata/common/web_data_service_backend.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "components/webdata/common/web_data_request_manager.h" 9 #include "components/webdata/common/web_data_request_manager.h"
10 #include "components/webdata/common/web_database.h" 10 #include "components/webdata/common/web_database.h"
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 void WebDataServiceBackend::DBReadTaskWrapper( 85 void WebDataServiceBackend::DBReadTaskWrapper(
86 const WebDatabaseService::ReadTask& task, 86 const WebDatabaseService::ReadTask& task,
87 scoped_ptr<WebDataRequest> request) { 87 scoped_ptr<WebDataRequest> request) {
88 LoadDatabaseIfNecessary(); 88 LoadDatabaseIfNecessary();
89 if (db_ && init_status_ == sql::INIT_OK && !request->IsCancelled()) { 89 if (db_ && init_status_ == sql::INIT_OK && !request->IsCancelled()) {
90 request->SetResult(task.Run(db_.get()).Pass()); 90 request->SetResult(task.Run(db_.get()).Pass());
91 } 91 }
92 request_manager_->RequestCompleted(request.Pass()); 92 request_manager_->RequestCompleted(request.Pass());
93 } 93 }
94 94
95 void WebDataServiceBackend::GetDatabaseAsync(
96 const WebDatabaseService::DBCallback& callback) {
97 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::DB));
98 if (!db_ || init_status_ != sql::INIT_OK)
99 callback.Run(base::WeakPtr<WebDatabase>());
100 else
101 callback.Run(db_->AsWeakPtr());
102 }
103
95 WebDataServiceBackend::~WebDataServiceBackend() { 104 WebDataServiceBackend::~WebDataServiceBackend() {
96 ShutdownDatabase(false); 105 ShutdownDatabase(false);
97 } 106 }
98 107
99 void WebDataServiceBackend::Commit() { 108 void WebDataServiceBackend::Commit() {
100 if (db_ && init_status_ == sql::INIT_OK) { 109 if (db_ && init_status_ == sql::INIT_OK) {
101 db_->CommitTransaction(); 110 db_->CommitTransaction();
102 db_->BeginTransaction(); 111 db_->BeginTransaction();
103 } else { 112 } else {
104 NOTREACHED() << "Commit scheduled after Shutdown()"; 113 NOTREACHED() << "Commit scheduled after Shutdown()";
105 } 114 }
106 } 115 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698