FOSSredder 0.5.0
Loading...
Searching...
No Matches
StatementImportRunner.h
Go to the documentation of this file.
1
5
6#pragma once
7
9
10#include <memory>
11#include <string>
12#include <vector>
13
17}
19class IErrorReporter;
20}
21
23
26public:
27 explicit StatementImportRunner(
28 std::shared_ptr<IImportStatement> importService,
29 std::string runBasePath,
30 std::shared_ptr<core::ports::diagnostics::IErrorReporter> errorReporter);
31 explicit StatementImportRunner(
32 std::shared_ptr<StatementImportJobSystem> jobSystem,
33 std::string runBasePath,
34 std::shared_ptr<core::ports::diagnostics::IErrorReporter> errorReporter);
36
39
44 void unsubscribe(
46 void cancel(
48 void pause(
50 void resume(
52
56
61 override;
66 const override;
71 const override;
74 const std::string &sourceFile,
77 const std::vector<core::ports::importing::draft::TransactionDraft>
78 &transactions,
79 const std::string &draftId) const override;
83 override;
87 const core::ports::workspace::WorkspaceSnapshot &state) const override;
90 const core::ports::workspace::WorkspaceSnapshot &secondary) const override;
91
92private:
93 class Impl;
94 std::unique_ptr<Impl> impl_;
95};
96
97} // namespace core::application::importing
Import runner port consumed by UI workflows.
Public statement import service used by the import job orchestration.
core::ports::workspace::WorkspaceSnapshot mergeWorkspaceState(core::ports::workspace::WorkspaceSnapshot primary, const core::ports::workspace::WorkspaceSnapshot &secondary) const override
Merges two workspace snapshots for import matching context.
core::ports::importing::ImportResult importResult(const core::ports::importing::StatementImportHandle &handle) override
Returns the completed import result for a handle.
void resume(const core::ports::importing::StatementImportHandle &handle) override
Resumes a paused import.
core::ports::importing::draft::StatementDraft restoreStatementDraft(const core::ports::workspace::StatementDraftSnapshot &draft) const override
Restores a runtime statement draft from a workspace draft snapshot.
core::ports::importing::draft::StatementDraftEditResult updateStatementDraft(core::ports::importing::draft::StatementDraft &draft, const core::ports::importing::draft::StatementDraftEdit &edit) const override
Applies one edit command to a statement draft.
StatementImportRunner & operator=(const StatementImportRunner &)=delete
void cancel(const core::ports::importing::StatementImportHandle &handle) override
Requests cancellation of an import.
StatementImportRunner(const StatementImportRunner &)=delete
core::ports::importing::StatementImportHandle startStatementImport(const core::ports::importing::ImportRequest &request, core::ports::importing::StatementImportEventCallback callback) override
Starts an asynchronous statement import.
core::ports::workspace::StatementDraftSnapshot buildStatementDraftSnapshot(const core::ports::importing::draft::StatementDraft &draft, const core::ports::workspace::WorkspaceSnapshot &state) const override
Converts a runtime statement draft to a workspace draft snapshot.
StatementImportRunner(std::shared_ptr< IImportStatement > importService, std::string runBasePath, std::shared_ptr< core::ports::diagnostics::IErrorReporter > errorReporter)
void unsubscribe(const core::ports::importing::StatementImportHandle &handle) override
Removes a progress subscription for an import.
void pause(const core::ports::importing::StatementImportHandle &handle) override
Pauses a running import.
core::ports::importing::draft::DraftDerivedState buildDraftDerivedState(const core::ports::workspace::WorkspaceSnapshot &state, const core::ports::importing::draft::DraftLinkSelection &selection) const override
Builds derived selection state for a draft link selection.
core::ports::importing::draft::StatementDraft buildStatementDraft(const std::string &sourceFile, const core::ports::workspace::StatementSnapshot &statement, const core::ports::workspace::WorkspaceSnapshot &state, const std::vector< core::ports::importing::draft::TransactionDraft > &transactions, const std::string &draftId) const override
Builds a statement draft from imported statement data.
bool updateTransactionDraft(core::ports::importing::draft::TransactionDraft &draft, const core::ports::workspace::WorkspaceSnapshot &state, const core::ports::importing::draft::TransactionDraftEdit &edit) const override
Applies one edit command to a transaction draft.
Port for reporting structured diagnostic error events.
std::function< void(const StatementImportEvent &)> StatementImportEventCallback