LeviLamina
Loading...
Searching...
No Matches
EditorPersistenceServiceV2.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/PersistenceGroupType.h"
7#include "mc/common/editor/PersistenceScope.h"
8#include "mc/deps/core/file/PathBuffer.h"
9#include "mc/deps/core/string/BasicStackString.h"
10#include "mc/deps/game_refs/StackRefResult.h"
11#include "mc/deps/game_refs/WeakRef.h"
12#include "mc/deps/scripting/runtime/Result_deprecated.h"
13#include "mc/editor/serviceproviders/EditorPersistenceServiceV2Provider.h"
14#include "mc/editor/services/IEditorService.h"
15#include "mc/editor/services/PayloadStoreHelper.h"
16
17// auto generated forward declare list
18// clang-format off
19namespace Editor { class ServiceProviderCollection; }
20namespace Editor::Network { class PersistenceRequestGroupPayload; }
21namespace Editor::Network { class PersistenceResponseGroupPayload; }
22namespace Editor::Network { class SavePersistenceGroupPayload; }
23namespace Editor::Services { class PersistenceGroup; }
24namespace Editor::Services { struct PersistenceGroupManifest; }
25// clang-format on
26
27namespace Editor::Services {
28
29class EditorPersistenceServiceV2 : public ::Editor::Services::IEditorService,
32public:
33 // member variables
34 // NOLINTBEGIN
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 EditorPersistenceServiceV2& operator=(EditorPersistenceServiceV2 const&);
45 EditorPersistenceServiceV2(EditorPersistenceServiceV2 const&);
46 EditorPersistenceServiceV2();
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 virtual ~EditorPersistenceServiceV2() /*override*/;
52
53 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
54
55 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
56
57 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
58
59 virtual ::std::string_view getServiceName() const /*override*/;
60
61 virtual ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> getGroup(
62 ::std::string const& namespacedName,
63 ::Editor::Services::PersistenceScope scope,
64 ::std::optional<int> version
65 ) /*override*/;
66
67 virtual ::Scripting::Result_deprecated<void> deleteGroup(
68 ::std::string const& namespacedName,
69 ::Editor::Services::PersistenceScope scope,
70 ::std::optional<int> version
71 ) /*override*/;
72
73 virtual ::Scripting::Result_deprecated<void>
74 deleteGroup(::StackRefResult<::Editor::Services::PersistenceGroup> const group) /*override*/;
75
76 virtual ::std::vector<::StackRefResult<::Editor::Services::PersistenceGroup>> fetchGroups(
77 ::std::optional<::std::string> groupNamespace,
78 ::std::optional<::std::string> namespacedName,
79 ::std::optional<::Editor::Services::PersistenceScope> scope,
80 ::std::optional<int> version
81 ) /*override*/;
82
83 virtual ::Scripting::Result_deprecated<void> requestGroup(
84 ::std::string const& namespacedName,
85 ::Editor::Services::PersistenceScope scope,
86 ::std::optional<int> version,
88 callback
89 ) /*override*/;
90
91 virtual ::Scripting::Result_deprecated<void>
92 syncAndSaveGroup(::StackRefResult<::Editor::Services::PersistenceGroup> group) /*override*/;
93
94 virtual ::Core::PathBuffer<::std::string> _getGroupRootPath(::Editor::Services::PersistenceScope) const = 0;
95 // NOLINTEND
96
97public:
98 // member functions
99 // NOLINTBEGIN
101
102 MCNAPI ::WeakRef<::Editor::Services::PersistenceGroup> _createCacheGroup(
103 ::std::string const& namespacedName,
104 ::Editor::Services::PersistenceScope scope,
105 int version,
106 ::Editor::Services::PersistenceGroupType groupType
107 );
108
109 MCNAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> _createGroup(
110 ::std::string const& namespacedName,
111 ::Editor::Services::PersistenceScope scope,
112 ::std::optional<int> version,
113 ::Editor::Services::PersistenceGroupType groupType
114 );
115
116 MCNAPI ::StackRefResult<::Editor::Services::PersistenceGroup> _getGroup(
117 ::std::string const& namespacedName,
118 ::Editor::Services::PersistenceScope scope,
119 ::std::optional<int> version
120 );
121
122 MCNAPI ::Core::PathBuffer<::Core::BasicStackString<char, 1024>>
123 _getManifestFilePath(::Editor::Services::PersistenceScope scope);
124
125 MCNAPI int _getMaxVersion(::std::string const& namespacedName, ::Editor::Services::PersistenceScope scope);
126
127 MCNAPI ::Core::PathBuffer<::std::string> _getPath(
128 ::std::string const& namespacedName,
129 ::Editor::Services::PersistenceScope scope,
130 ::std::optional<int> version
131 ) const;
132
134
136
138
139 MCNAPI void _loadGroupMetaData(::Editor::Services::PersistenceScope scope);
140
141 MCNAPI ::std::optional<::Editor::Services::PersistenceGroupManifest> _parseJsonToGroupManifest(::std::string value);
142
143 MCNAPI bool _saveGroupMetaData(::Editor::Services::PersistenceScope scope);
144 // NOLINTEND
145
146public:
147 // constructor thunks
148 // NOLINTBEGIN
150 // NOLINTEND
151
152public:
153 // destructor thunk
154 // NOLINTBEGIN
155 MCNAPI void $dtor();
156 // NOLINTEND
157
158public:
159 // virtual function thunks
160 // NOLINTBEGIN
161 MCNAPI ::Scripting::Result_deprecated<void> $init();
162
163 MCNAPI ::Scripting::Result_deprecated<void> $quit();
164
165 MCNAPI ::Scripting::Result_deprecated<void> $ready();
166
167 MCNAPI ::std::string_view $getServiceName() const;
168
169 MCNAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> $getGroup(
170 ::std::string const& namespacedName,
171 ::Editor::Services::PersistenceScope scope,
172 ::std::optional<int> version
173 );
174
175 MCNAPI ::Scripting::Result_deprecated<void> $deleteGroup(
176 ::std::string const& namespacedName,
177 ::Editor::Services::PersistenceScope scope,
178 ::std::optional<int> version
179 );
180
181 MCNAPI ::Scripting::Result_deprecated<void>
183
184 MCNAPI ::std::vector<::StackRefResult<::Editor::Services::PersistenceGroup>> $fetchGroups(
185 ::std::optional<::std::string> groupNamespace,
186 ::std::optional<::std::string> namespacedName,
187 ::std::optional<::Editor::Services::PersistenceScope> scope,
188 ::std::optional<int> version
189 );
190
191 MCNAPI ::Scripting::Result_deprecated<void> $requestGroup(
192 ::std::string const& namespacedName,
193 ::Editor::Services::PersistenceScope scope,
194 ::std::optional<int> version,
196 callback
197 );
198
199 MCNAPI ::Scripting::Result_deprecated<void>
201
202
203 // NOLINTEND
204
205public:
206 // vftables
207 // NOLINTBEGIN
208 MCNAPI static void** $vftableForIEditorService();
209
211 // NOLINTEND
212};
213
214} // namespace Editor::Services
Definition PersistenceRequestGroupPayload.h:16
Definition PersistenceResponseGroupPayload.h:16
Definition SavePersistenceGroupPayload.h:11
Definition ServiceProviderCollection.h:7
Definition EditorPersistenceServiceV2Provider.h:18
MCAPI ::std::optional<::Editor::Services::PersistenceGroupManifest > _parseJsonToGroupManifest(::std::string value)
MCAPI ::StackRefResult<::Editor::Services::PersistenceGroup > _getGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version)
MCAPI void _loadGroupMetaData(::Editor::Services::PersistenceScope scope)
MCAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup > > $getGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version)
MCAPI ::Scripting::Result_deprecated< void > $deleteGroup(::StackRefResult<::Editor::Services::PersistenceGroup > const group)
MCAPI ::Scripting::Result_deprecated< void > $deleteGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version)
MCAPI void _handleSaveGroupPayload(::Editor::Network::SavePersistenceGroupPayload const &payload)
MCAPI bool _saveGroupMetaData(::Editor::Services::PersistenceScope scope)
MCAPI void _handleRequestGroupPayload(::Editor::Network::PersistenceRequestGroupPayload const &payload)
MCAPI ::std::vector<::StackRefResult<::Editor::Services::PersistenceGroup > > $fetchGroups(::std::optional<::std::string > groupNamespace, ::std::optional<::std::string > namespacedName, ::std::optional<::Editor::Services::PersistenceScope > scope, ::std::optional< int > version)
MCAPI::std::string_view $getServiceName() const
MCAPI EditorPersistenceServiceV2(::Editor::ServiceProviderCollection &providers)
MCAPI ::Core::PathBuffer<::Core::BasicStackString< char, 1024 > > _getManifestFilePath(::Editor::Services::PersistenceScope scope)
MCAPI ::Scripting::Result_deprecated< void > $syncAndSaveGroup(::StackRefResult<::Editor::Services::PersistenceGroup > group)
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI ::Core::PathBuffer<::std::string > _getPath(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version) const
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup > > _createGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version, ::Editor::Services::PersistenceGroupType groupType)
MCAPI ::Scripting::Result_deprecated< void > $init()
static MCAPI void ** $vftableForIEditorService()
static MCAPI void ** $vftableForEditorPersistenceServiceV2Provider()
MCAPI int _getMaxVersion(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope)
MCAPI ::WeakRef<::Editor::Services::PersistenceGroup > _createCacheGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, int version, ::Editor::Services::PersistenceGroupType groupType)
MCAPI void _handleResponseGroupPayload(::Editor::Network::PersistenceResponseGroupPayload const &payload)
MCAPI ::Scripting::Result_deprecated< void > $requestGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version, ::std::function< void(::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup > >)> callback)
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
Definition IEditorService.h:11
Definition PayloadStoreHelper.h:7
Definition PersistenceGroup.h:20
Definition Result_deprecated.h:8
Definition StackRefResult.h:7
Definition PersistenceGroupManifest.h:12
Definition Alias.h:14