31 struct CrashProcessorInfo {
41 CrashProcessorInfo& operator=(CrashProcessorInfo
const&);
42 CrashProcessorInfo(CrashProcessorInfo
const&);
49 MCNAPI ~CrashProcessorInfo();
62 struct CrashedSessionInfo {
73 CrashedSessionInfo& operator=(CrashedSessionInfo
const&);
74 CrashedSessionInfo(CrashedSessionInfo
const&);
81 MCNAPI ~CrashedSessionInfo();
118 CrashManagerImpl& operator=(CrashManagerImpl
const&);
119 CrashManagerImpl(CrashManagerImpl
const&);
125 CrashManagerImpl& operator=(CrashManagerImpl
const&);
126 CrashManagerImpl(CrashManagerImpl
const&);
133 virtual ~CrashManagerImpl() =
default;
135 virtual ~CrashManagerImpl() ;
146 setCrashProcessorForFileType(::std::string_view, ::std::shared_ptr<::Bedrock::CrashFileProcessor>) ;
148 virtual void setCrashProcessorForFileType(
149 ::std::string_view fileExtension,
150 ::std::shared_ptr<::Bedrock::CrashFileProcessor> processor
155 virtual void setCrashTelemetryProcessor(::gsl::not_null<::Bedrock::CrashTelemetryProcessor*>) ;
158 setCrashTelemetryProcessor(::gsl::not_null<::Bedrock::CrashTelemetryProcessor*> processor) ;
163 processCrashes(::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface>,
::Scheduler&,
bool) ;
165 virtual void processCrashes(
166 ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface> workerPool,
168 bool isNetworkAvailable
172 virtual void notifyCrashed() ;
175 virtual void notifySystemError(uint, ::std::string
const&) ;
177 virtual void notifySystemError(uint errorCode, ::std::string
const& errorMessage) ;
181 virtual void recordCrashedSession(::std::string_view, ::std::string_view, int64) ;
183 virtual void recordCrashedSession(
184 ::std::string_view sessionId,
185 ::std::string_view serializedSession,
190 virtual void stopProcessingCrashes() ;
192 virtual bool isCrashProcessingActive() const ;
194 virtual ::
std::
string const& getCrashDataRoot() const ;
196 virtual ::
std::
string const& getCrashedSessionFileSuffix() const ;
203 MCNAPI CrashManagerImpl();
205 MCNAPI
void _doNetworkUnavailableCleanup();
207 MCNAPI ::std::shared_ptr<::Bedrock::SessionInfo> _findCrashedSessionInfo(::std::string_view sessionId)
const;
209 MCNAPI
void _finishSendingTelemetry();
211 MCNAPI
void _notifyDoneWithSession(::std::string_view sessionId);
213 MCNAPI
void _preProcessSessions();
215 MCNAPI
void _processCrashesAsync(
218 ::std::shared_ptr<::gsl::final_action<::std::function<
void()>>> doneTask
221 MCNAPI
void _processCrashesSync(
224 ::std::shared_ptr<::gsl::final_action<::std::function<
void()>>> doneTask
227 MCNAPI ::Bedrock::Threading::Async<bool>
230 MCNAPI
void _queueTask(::std::string_view name, ::std::function<
void()>&& task);
232 MCNAPI
void _resetProcessingState();
234 MCNAPI
void _scanCrashFiles();
242 MCNAPI
void* $ctor();
258 MCNAPI
void $setCrashProcessorForFileType(
259 ::std::string_view fileExtension,
260 ::std::shared_ptr<::Bedrock::CrashFileProcessor> processor
263 MCNAPI
void $setCrashTelemetryProcessor(::gsl::not_null<::Bedrock::CrashTelemetryProcessor*> processor);
265 MCNAPI
void $processCrashes(
266 ::std::shared_ptr<::Bedrock::WorkerPoolHandleInterface> workerPool,
268 bool isNetworkAvailable
271 MCNAPI
void $notifyCrashed();
273 MCNAPI
void $notifySystemError(uint errorCode, ::std::string
const& errorMessage);
276 $recordCrashedSession(::std::string_view sessionId, ::std::string_view serializedSession, int64 crashTime);
278 MCNAPI
void $stopProcessingCrashes();
280 MCNAPI
bool $isCrashProcessingActive()
const;
282 MCNAPI ::std::string
const& $getCrashDataRoot()
const;
284 MCNAPI ::std::string
const& $getCrashedSessionFileSuffix()
const;