#include "chrome/browser/notifications/scheduler/internal/notification_store.h"
#include "base/functional/bind.h"
#include "chrome/browser/notifications/scheduler/internal/proto_conversion.h"
namespace leveldb_proto {
void DataToProto(notifications::NotificationEntry* entry,
notifications::proto::NotificationEntry* proto) { … }
void ProtoToData(notifications::proto::NotificationEntry* proto,
notifications::NotificationEntry* entry) { … }
}
namespace notifications {
NotificationStore::NotificationStore(
std::unique_ptr<leveldb_proto::ProtoDatabase<proto::NotificationEntry,
NotificationEntry>> db)
: … { … }
NotificationStore::~NotificationStore() = default;
void NotificationStore::InitAndLoad(LoadCallback callback) { … }
void NotificationStore::OnDbInitialized(
LoadCallback callback,
leveldb_proto::Enums::InitStatus status) { … }
void NotificationStore::OnDataLoaded(
LoadCallback callback,
bool success,
std::unique_ptr<EntryVector> entry_vector) { … }
void NotificationStore::Add(const std::string& key,
const NotificationEntry& entry,
UpdateCallback callback) { … }
void NotificationStore::Update(const std::string& key,
const NotificationEntry& entry,
UpdateCallback callback) { … }
void NotificationStore::Delete(const std::string& key,
UpdateCallback callback) { … }
}