FOSSredder 0.5.0
Loading...
Searching...
No Matches
WorkspaceWorkflowService.h
Go to the documentation of this file.
1
5
6#pragma once
7
8#include <string>
9
12
13namespace core::application {
14
16
18public:
22
27
29 [[nodiscard]] std::string finalizeStatementDraft(const core::ports::workspace::FinalizeStatementDraftCommand& command);
31 void saveStatementDraft(const core::ports::workspace::StatementDraftCommand& command);
33 void clearStatementDraft(const std::string& draftId = {});
34
38 void deleteImportLog(const std::string& id);
42 void deleteExportLog(const std::string& id);
43
44private:
46 void commit();
47
48 WorkspaceSession* session_ = nullptr;
49};
50
51} // namespace core::application
Internal mutable workspace session state for application services.
Maintains the editable app state for one workspace and persists it through IStorageManager.
void saveImportLog(const core::ports::workspace::ImportLogCommand &command)
Saves or updates one import log.
WorkspaceWorkflowService(WorkspaceSession &session)
Creates workflow service bound to one workspace session.
void deleteExportLog(const std::string &id)
Deletes one export log by id.
void saveExportLog(const core::ports::workspace::ExportLogCommand &command)
Saves or updates one export log.
WorkspaceWorkflowService(WorkspaceWorkflowService &&) noexcept
std::string finalizeStatementDraft(const core::ports::workspace::FinalizeStatementDraftCommand &command)
Finalizes statement draft and returns created statement id.
WorkspaceWorkflowService(const WorkspaceWorkflowService &)=delete
void clearStatementDraft(const std::string &draftId={})
Clears one statement draft by id, or all drafts when id is empty.
void deleteImportLog(const std::string &id)
Deletes one import log by id.
void saveStatementDraft(const core::ports::workspace::StatementDraftCommand &command)
Saves or updates statement draft.
WorkspaceWorkflowService & operator=(const WorkspaceWorkflowService &)=delete
Write-side boundary command models for workspace operations.