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