1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "components/webdata/common/web_data_service_base.h" 6 7 #include "base/single_thread_task_runner.h" 8 #include "base/threading/thread.h" 9 #include "components/webdata/common/web_database_service.h" 10 WebDataServiceBase(scoped_refptr<WebDatabaseService> wdbs,const scoped_refptr<base::SingleThreadTaskRunner> & ui_task_runner)11WebDataServiceBase::WebDataServiceBase( 12 scoped_refptr<WebDatabaseService> wdbs, 13 const scoped_refptr<base::SingleThreadTaskRunner>& ui_task_runner) 14 : base::RefCountedDeleteOnSequence<WebDataServiceBase>(ui_task_runner), 15 wdbs_(wdbs) {} 16 ShutdownOnUISequence()17void WebDataServiceBase::ShutdownOnUISequence() {} 18 Init(ProfileErrorCallback callback)19void WebDataServiceBase::Init(ProfileErrorCallback callback) { 20 DCHECK(wdbs_); 21 wdbs_->RegisterDBErrorCallback(std::move(callback)); 22 wdbs_->LoadDatabase(); 23 } 24 ShutdownDatabase()25void WebDataServiceBase::ShutdownDatabase() { 26 if (wdbs_) 27 wdbs_->ShutdownDatabase(); 28 } 29 CancelRequest(Handle h)30void WebDataServiceBase::CancelRequest(Handle h) { 31 if (wdbs_) 32 wdbs_->CancelRequest(h); 33 } 34 GetDatabase()35WebDatabase* WebDataServiceBase::GetDatabase() { 36 return wdbs_ ? wdbs_->GetDatabaseOnDB() : nullptr; 37 } 38 39 WebDataServiceBase::~WebDataServiceBase() = default; 40