LeviLamina
Loading...
Searching...
No Matches
StorageMigrator.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/application/storage_migration/MigrationResult.h"
7
8// auto generated forward declare list
9// clang-format off
10class TaskResult;
11namespace Bedrock::StorageMigration { struct FoundFiles; }
12namespace Bedrock::StorageMigration { struct ManifestData; }
13// clang-format on
14
15namespace Bedrock::StorageMigration {
16
17class StorageMigrator : public ::std::enable_shared_from_this<::Bedrock::StorageMigration::StorageMigrator> {
18public:
19 // StorageMigrator inner types declare
20 // clang-format off
22 // clang-format on
23
24 // StorageMigrator inner types define
25 class MigrationProgress {
26 public:
27 // member variables
28 // NOLINTBEGIN
34 // NOLINTEND
35
36 public:
37 // prevent constructor by default
38 MigrationProgress& operator=(MigrationProgress const&);
39 MigrationProgress(MigrationProgress const&);
40 MigrationProgress();
41
42 public:
43 // member functions
44 // NOLINTBEGIN
45
46 // NOLINTEND
47
48 public:
49 // destructor thunk
50 // NOLINTBEGIN
51 MCNAPI_C void $dtor();
52 // NOLINTEND
53 };
54
55public:
56 // virtual functions
57 // NOLINTBEGIN
58 virtual ~StorageMigrator() = default;
59
60 virtual bool doQuickCompletionCheck() = 0;
61
62 virtual void _runMigration(
63 ::std::shared_ptr<::Bedrock::StorageMigration::ManifestData>,
64 ::std::shared_ptr<::Bedrock::StorageMigration::FoundFiles>,
66 ::std::function<void(::Bedrock::StorageMigration::MigrationResult)>
67 ) const = 0;
68 // NOLINTEND
69
70public:
71 // member functions
72 // NOLINTBEGIN
73 MCNAPI_C ::std::function<::TaskResult()> createMigrationTask(
74 ::std::shared_ptr<::Bedrock::StorageMigration::ManifestData> manifest,
75 ::std::shared_ptr<::Bedrock::StorageMigration::FoundFiles> filesToMigrate,
76 ::std::function<void(::Bedrock::StorageMigration::StorageMigrator::MigrationProgress)> progressCallback,
77 ::std::function<void(::Bedrock::StorageMigration::MigrationResult)> completeCallback
78 );
79 // NOLINTEND
80
81public:
82 // virtual function thunks
83 // NOLINTBEGIN
84
85 // NOLINTEND
86};
87
88} // namespace Bedrock::StorageMigration
Definition StorageMigrator.h:17
Definition TaskResult.h:5
Definition FoundFiles.h:7
Definition ManifestData.h:7
Definition Alias.h:14