missive_storage_module.cc 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. // Copyright 2021 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/reporting/storage/missive_storage_module.h"
  5. #include <memory>
  6. #include <utility>
  7. #include "base/bind.h"
  8. #include "base/callback.h"
  9. #include "base/memory/ptr_util.h"
  10. #include "components/reporting/proto/synced/record.pb.h"
  11. #include "components/reporting/proto/synced/record_constants.pb.h"
  12. #include "components/reporting/util/status.h"
  13. namespace reporting {
  14. using MissiveStorageModuleDelegateInterface =
  15. MissiveStorageModule::MissiveStorageModuleDelegateInterface;
  16. MissiveStorageModuleDelegateInterface::MissiveStorageModuleDelegateInterface() =
  17. default;
  18. MissiveStorageModuleDelegateInterface::
  19. ~MissiveStorageModuleDelegateInterface() = default;
  20. MissiveStorageModule::MissiveStorageModule(
  21. std::unique_ptr<MissiveStorageModuleDelegateInterface> delegate)
  22. : delegate_(std::move(delegate)) {}
  23. MissiveStorageModule::~MissiveStorageModule() = default;
  24. // static
  25. scoped_refptr<MissiveStorageModule> MissiveStorageModule::Create(
  26. std::unique_ptr<MissiveStorageModuleDelegateInterface> delegate) {
  27. return base::WrapRefCounted(new MissiveStorageModule(std::move(delegate)));
  28. }
  29. void MissiveStorageModule::AddRecord(Priority priority,
  30. Record record,
  31. EnqueueCallback callback) {
  32. delegate_->AddRecord(priority, std::move(record), std::move(callback));
  33. }
  34. void MissiveStorageModule::Flush(Priority priority, FlushCallback callback) {
  35. delegate_->Flush(priority, std::move(callback));
  36. }
  37. void MissiveStorageModule::ReportSuccess(
  38. SequenceInformation sequence_information,
  39. bool force) {
  40. delegate_->ReportSuccess(sequence_information, force);
  41. }
  42. void MissiveStorageModule::UpdateEncryptionKey(
  43. SignedEncryptionInfo signed_encryption_info) {
  44. delegate_->UpdateEncryptionKey(signed_encryption_info);
  45. }
  46. } // namespace reporting