LeviLamina
Loading...
Searching...
No Matches
RemoteStorageProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/StorageResult.h"
7#include "mc/util/CallbackTokenContext.h"
8
9// auto generated forward declare list
10// clang-format off
11class CallbackToken;
12namespace Core { class RemoteStorageManifest; }
13namespace Core { class Result; }
14// clang-format on
15
16namespace Core {
17
18class RemoteStorageProvider {
19public:
20 // member variables
21 // NOLINTBEGIN
23 // NOLINTEND
24
25public:
26 // prevent constructor by default
27 RemoteStorageProvider& operator=(RemoteStorageProvider const&);
28 RemoteStorageProvider(RemoteStorageProvider const&);
29 RemoteStorageProvider();
30
31public:
32 // virtual functions
33 // NOLINTBEGIN
34 virtual ~RemoteStorageProvider() = default;
35
36 virtual void shutdown();
37
38 virtual ::std::string const& getWorldsPrefix() const = 0;
39
40 virtual ::std::string encodeWorldName(::std::string const&) = 0;
41
42 virtual ::std::string encodeFileName(::std::string const&) = 0;
43
44 virtual float getSyncProgress() = 0;
45
46 virtual void tick() = 0;
47
48 virtual void onAppSuspend() = 0;
49
50 virtual void onAppResume() = 0;
51
52 virtual void onSignOut() = 0;
53
54 virtual ::CallbackToken
55 onSignIn(::std::shared_ptr<::CallbackTokenContext<::std::function<void(::Core::Result)>>>) = 0;
56
57 virtual ::CallbackToken deleteContainer(
58 ::std::shared_ptr<::CallbackTokenContext<::std::function<void(::Core::Result)>>>,
59 ::std::string const&
60 ) = 0;
61
62 virtual ::CallbackToken commit(
63 ::std::shared_ptr<::CallbackTokenContext<::std::function<void(::Core::Result, ::Core::StorageResult)>>>,
64 ::std::string const&,
65 ::std::set<::std::string> const&,
66 ::std::set<::std::string>&,
67 ::std::set<::std::string>&,
68 bool
69 ) = 0;
70
71 virtual ::CallbackToken sync(
72 ::std::string const&,
73 ::std::string const&,
74 ::std::shared_ptr<::CallbackTokenContext<::std::function<void(::Core::Result)>>>,
75 ::std::function<void(::std::string const&, bool)>
76 ) = 0;
77
78 virtual ::CallbackToken syncMeta(
79 ::std::string const&,
80 ::std::string const&,
81 ::std::shared_ptr<::CallbackTokenContext<::std::function<void(::Core::Result)>>>
82 ) = 0;
83
84 virtual ::CallbackToken syncContainerManifest(
85 ::std::string const&,
86 ::std::string const&,
87 ::std::shared_ptr<::CallbackTokenContext<::std::function<void(::Core::Result)>>>
88 ) = 0;
89
90 virtual ::Core::RemoteStorageManifest getManifest(::std::string const&) = 0;
91 // NOLINTEND
92
93public:
94 // virtual function thunks
95 // NOLINTBEGIN
96
97 // NOLINTEND
98};
99
100} // namespace Core
Definition CallbackTokenContext.h:6
Definition CallbackToken.h:5
Definition RemoteStorageManifest.h:7
Definition Result.h:11
Definition Alias.h:14