36 virtual std::vector<std::shared_ptr<core::domain::Analysis>>
getAnalyses()
const = 0;
43 virtual std::optional<std::shared_ptr<core::domain::Analysis>>
getAnalysisById(
const std::string&
id)
const = 0;
virtual void addAnalysis(const std::shared_ptr< core::domain::Analysis > &analysis)=0
Add a new analysis.
virtual void updateAnalysis(const std::shared_ptr< core::domain::Analysis > &analysis)=0
Update an existing analysis.
virtual ~IAnalysisRepository()=default
Destroy the analysis repository interface.
virtual std::vector< std::shared_ptr< core::domain::Analysis > > getAnalyses() const =0
Retrieve all analyses.
virtual void removeAnalysis(const std::string &id)=0
Remove an analysis by identifier.
virtual void clearAnalyses()=0
Remove all analyses.
virtual std::optional< std::shared_ptr< core::domain::Analysis > > getAnalysisById(const std::string &id) const =0
Retrieve an analysis by identifier.
virtual void upsertAnalysis(const std::shared_ptr< core::domain::Analysis > &analysis)=0
Insert or update an analysis.