metadata_batch.cc 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // Copyright 2016 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "components/sync/model/metadata_batch.h"
  5. #include <memory>
  6. #include <utility>
  7. #include "components/sync/protocol/entity_metadata.pb.h"
  8. namespace syncer {
  9. MetadataBatch::MetadataBatch() = default;
  10. MetadataBatch::MetadataBatch(MetadataBatch&& other) = default;
  11. MetadataBatch::~MetadataBatch() = default;
  12. const EntityMetadataMap& MetadataBatch::GetAllMetadata() const {
  13. return metadata_map_;
  14. }
  15. EntityMetadataMap MetadataBatch::TakeAllMetadata() {
  16. return std::move(metadata_map_);
  17. }
  18. void MetadataBatch::AddMetadata(
  19. const std::string& storage_key,
  20. std::unique_ptr<sync_pb::EntityMetadata> metadata) {
  21. metadata_map_.insert(std::make_pair(storage_key, std::move(metadata)));
  22. }
  23. const sync_pb::ModelTypeState& MetadataBatch::GetModelTypeState() const {
  24. return state_;
  25. }
  26. void MetadataBatch::SetModelTypeState(const sync_pb::ModelTypeState& state) {
  27. state_ = state;
  28. }
  29. } // namespace syncer