execute method

Future<void> execute(
  1. AnalysisResult analysis,
  2. List<OptimizationResult> optimizations,
  3. String outputDir,
  4. String reportName,
)

Implementation

Future<void> execute(
  AnalysisResult analysis,
  List<OptimizationResult> optimizations,
  String outputDir,
  String reportName,
) async {
  try {
    _state.startReporting();

    await _reportService.saveAnalysisReport(
      analysis,
      '$outputDir/${reportName}_analysis.json',
    );

    if (optimizations.isNotEmpty) {
      await _reportService.saveOptimizationReport(
        optimizations,
        '$outputDir/${reportName}_optimization.json',
      );
    }

    _state.completeReporting();
  } catch (e) {
    _state.failReporting(e.toString());
    rethrow;
  }
}