blob: 23c2a947fc11145a210134cbfbf91421fbd8fefe [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/sync/model_impl/in_memory_metadata_change_list.h"
namespace syncer {
InMemoryMetadataChangeList::InMemoryMetadataChangeList() {}
InMemoryMetadataChangeList::~InMemoryMetadataChangeList() {}
void InMemoryMetadataChangeList::UpdateModelTypeState(
const sync_pb::ModelTypeState& model_type_state) {
state_change_.reset(new ModelTypeStateChange{UPDATE, model_type_state});
}
void InMemoryMetadataChangeList::ClearModelTypeState() {
state_change_.reset(new ModelTypeStateChange{CLEAR});
}
void InMemoryMetadataChangeList::UpdateMetadata(
const std::string& storage_key,
const sync_pb::EntityMetadata& metadata) {
metadata_changes_[storage_key] = {UPDATE, metadata};
}
void InMemoryMetadataChangeList::ClearMetadata(const std::string& storage_key) {
metadata_changes_[storage_key] = {CLEAR, sync_pb::EntityMetadata()};
}
} // namespace syncer