breadcrumb_persistent_storage_util.cc 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright 2019 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/breadcrumbs/core/breadcrumb_persistent_storage_util.h"
  5. #include "base/bind.h"
  6. #include "base/files/file_path.h"
  7. #include "base/files/file_util.h"
  8. #include "base/task/thread_pool.h"
  9. namespace breadcrumbs {
  10. namespace {
  11. const base::FilePath::CharType kBreadcrumbsFile[] =
  12. FILE_PATH_LITERAL("Breadcrumbs");
  13. const base::FilePath::CharType kBreadcrumbsTempFile[] =
  14. FILE_PATH_LITERAL("Breadcrumbs.temp");
  15. void DoDeleteBreadcrumbFiles(const base::FilePath& storage_dir) {
  16. base::DeleteFile(
  17. breadcrumbs::GetBreadcrumbPersistentStorageFilePath(storage_dir));
  18. base::DeleteFile(
  19. breadcrumbs::GetBreadcrumbPersistentStorageTempFilePath(storage_dir));
  20. }
  21. } // namespace
  22. base::FilePath GetBreadcrumbPersistentStorageFilePath(
  23. const base::FilePath& storage_dir) {
  24. return storage_dir.Append(kBreadcrumbsFile);
  25. }
  26. base::FilePath GetBreadcrumbPersistentStorageTempFilePath(
  27. const base::FilePath& storage_dir) {
  28. return storage_dir.Append(kBreadcrumbsTempFile);
  29. }
  30. void DeleteBreadcrumbFiles(const base::FilePath& storage_dir) {
  31. base::ThreadPool::PostTask(
  32. FROM_HERE, {base::MayBlock(), base::TaskPriority::BEST_EFFORT},
  33. base::BindOnce(&DoDeleteBreadcrumbFiles, storage_dir));
  34. }
  35. } // namespace breadcrumbs