#include "content/browser/indexed_db/indexed_db_pre_close_task_queue.h"
#include <utility>
#include "base/functional/bind.h"
#include "base/metrics/histogram_macros.h"
#include "base/task/sequenced_task_runner.h"
#include "third_party/blink/public/common/indexeddb/indexeddb_metadata.h"
#include "third_party/leveldatabase/env_chromium.h"
IndexedDBDatabaseMetadata;
namespace content {
IndexedDBPreCloseTaskQueue::PreCloseTask::PreCloseTask(leveldb::DB* database)
: … { … }
IndexedDBPreCloseTaskQueue::PreCloseTask::~PreCloseTask() = default;
bool IndexedDBPreCloseTaskQueue::PreCloseTask::RequiresMetadata() const { … }
void IndexedDBPreCloseTaskQueue::PreCloseTask::SetMetadata(
const std::vector<blink::IndexedDBDatabaseMetadata>* metadata) { … }
IndexedDBPreCloseTaskQueue::IndexedDBPreCloseTaskQueue(
std::list<std::unique_ptr<IndexedDBPreCloseTaskQueue::PreCloseTask>> tasks,
base::OnceClosure on_complete,
base::TimeDelta max_run_time,
std::unique_ptr<base::OneShotTimer> timer)
: … { … }
IndexedDBPreCloseTaskQueue::~IndexedDBPreCloseTaskQueue() = default;
void IndexedDBPreCloseTaskQueue::Stop() { … }
void IndexedDBPreCloseTaskQueue::Start(MetadataFetcher metadata_fetcher) { … }
void IndexedDBPreCloseTaskQueue::OnComplete() { … }
void IndexedDBPreCloseTaskQueue::StopForTimout() { … }
void IndexedDBPreCloseTaskQueue::StopForMetadataError(
const leveldb::Status& status) { … }
void IndexedDBPreCloseTaskQueue::RunLoop() { … }
}