#include "chrome/browser/extensions/api/storage/syncable_settings_storage.h"
#include <utility>
#include "base/logging.h"
#include "base/strings/stringprintf.h"
#include "chrome/browser/extensions/api/storage/settings_sync_processor.h"
#include "components/sync/model/model_error.h"
#include "components/sync/model/sync_change.h"
#include "components/sync/protocol/extension_setting_specifics.pb.h"
#include "extensions/browser/api/storage/backend_task_runner.h"
#include "extensions/browser/api/storage/storage_area_namespace.h"
#include "extensions/common/extension_id.h"
ValueStore;
namespace extensions {
SyncableSettingsStorage::SyncableSettingsStorage(
SequenceBoundSettingsChangedCallback observer,
const ExtensionId& extension_id,
ValueStore* delegate,
syncer::DataType sync_type,
const syncer::SyncableService::StartSyncFlare& flare)
: … { … }
SyncableSettingsStorage::~SyncableSettingsStorage() { … }
size_t SyncableSettingsStorage::GetBytesInUse(const std::string& key) { … }
size_t SyncableSettingsStorage::GetBytesInUse(
const std::vector<std::string>& keys) { … }
size_t SyncableSettingsStorage::GetBytesInUse() { … }
template <class T>
T SyncableSettingsStorage::HandleResult(T result) { … }
ValueStore::ReadResult SyncableSettingsStorage::Get(
const std::string& key) { … }
ValueStore::ReadResult SyncableSettingsStorage::Get(
const std::vector<std::string>& keys) { … }
ValueStore::ReadResult SyncableSettingsStorage::Get() { … }
ValueStore::WriteResult SyncableSettingsStorage::Set(
WriteOptions options, const std::string& key, const base::Value& value) { … }
ValueStore::WriteResult SyncableSettingsStorage::Set(
WriteOptions options,
const base::Value::Dict& values) { … }
ValueStore::WriteResult SyncableSettingsStorage::Remove(
const std::string& key) { … }
ValueStore::WriteResult SyncableSettingsStorage::Remove(
const std::vector<std::string>& keys) { … }
ValueStore::WriteResult SyncableSettingsStorage::Clear() { … }
void SyncableSettingsStorage::SyncResultIfEnabled(
const ValueStore::WriteResult& result) { … }
std::optional<syncer::ModelError> SyncableSettingsStorage::StartSyncing(
base::Value::Dict sync_state,
std::unique_ptr<SettingsSyncProcessor> sync_processor) { … }
std::optional<syncer::ModelError>
SyncableSettingsStorage::SendLocalSettingsToSync(
base::Value::Dict local_state) { … }
std::optional<syncer::ModelError>
SyncableSettingsStorage::OverwriteLocalSettingsWithSync(
base::Value::Dict sync_state,
base::Value::Dict local_state) { … }
void SyncableSettingsStorage::StopSyncing() { … }
std::optional<syncer::ModelError> SyncableSettingsStorage::ProcessSyncChanges(
std::unique_ptr<SettingSyncDataList> sync_changes) { … }
std::optional<syncer::ModelError> SyncableSettingsStorage::OnSyncAdd(
const std::string& key,
base::Value new_value,
value_store::ValueStoreChangeList* changes) { … }
std::optional<syncer::ModelError> SyncableSettingsStorage::OnSyncUpdate(
const std::string& key,
base::Value old_value,
base::Value new_value,
value_store::ValueStoreChangeList* changes) { … }
std::optional<syncer::ModelError> SyncableSettingsStorage::OnSyncDelete(
const std::string& key,
base::Value old_value,
value_store::ValueStoreChangeList* changes) { … }
}