#include "components/services/storage/dom_storage/async_dom_storage_database.h"
#include <inttypes.h>
#include <algorithm>
#include <map>
#include <optional>
#include <string>
#include <utility>
#include "base/feature_list.h"
#include "base/metrics/histogram_functions.h"
#include "base/metrics/histogram_macros.h"
#include "base/rand_util.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/sequenced_task_runner.h"
#include "third_party/leveldatabase/env_chromium.h"
#include "third_party/leveldatabase/src/include/leveldb/db.h"
#include "third_party/leveldatabase/src/include/leveldb/write_batch.h"
namespace storage {
std::unique_ptr<AsyncDomStorageDatabase> AsyncDomStorageDatabase::OpenDirectory(
const base::FilePath& directory,
const std::string& dbname,
const std::optional<base::trace_event::MemoryAllocatorDumpGuid>&
memory_dump_id,
scoped_refptr<base::SequencedTaskRunner> blocking_task_runner,
StatusCallback callback) { … }
std::unique_ptr<AsyncDomStorageDatabase> AsyncDomStorageDatabase::OpenInMemory(
const std::optional<base::trace_event::MemoryAllocatorDumpGuid>&
memory_dump_id,
const std::string& tracking_name,
scoped_refptr<base::SequencedTaskRunner> blocking_task_runner,
StatusCallback callback) { … }
AsyncDomStorageDatabase::AsyncDomStorageDatabase() = default;
AsyncDomStorageDatabase::~AsyncDomStorageDatabase() { … }
void AsyncDomStorageDatabase::RewriteDB(StatusCallback callback) { … }
void AsyncDomStorageDatabase::RunBatchDatabaseTasks(
std::vector<BatchDatabaseTask> tasks,
base::OnceCallback<void(leveldb::Status)> callback) { … }
void AsyncDomStorageDatabase::AddCommitter(Committer* source) { … }
void AsyncDomStorageDatabase::RemoveCommitter(Committer* source) { … }
void AsyncDomStorageDatabase::InitiateCommit(Committer* source) { … }
void AsyncDomStorageDatabase::OnDatabaseOpened(
StatusCallback callback,
base::SequenceBound<DomStorageDatabase> database,
leveldb::Status status) { … }
AsyncDomStorageDatabase::Commit::Commit() = default;
AsyncDomStorageDatabase::Commit::~Commit() = default;
AsyncDomStorageDatabase::Commit::Commit(AsyncDomStorageDatabase::Commit&&) =
default;
}