in src/advisor/reports/report_factory.py [0:0]
def createReport(self, root_directory, target_os='linux', issue_type_config=None, output_format=ReportOutputFormat.TEXT):
match output_format:
case ReportOutputFormat.TEXT:
report = TextReport(root_directory, target_os=target_os)
case ReportOutputFormat.HTML:
report = HtmlReport(root_directory, target_os=target_os)
case ReportOutputFormat.CSV:
report = CsvReport(root_directory, target_os=target_os)
case ReportOutputFormat.CSV_ISSUE_TYPE_COUNT_BY_FILE:
report = CsvIssueTypeCountByFileReport(root_directory, target_os=target_os, issue_type_config=issue_type_config)
case ReportOutputFormat.JSON:
report = JsonReport(root_directory, target_os=target_os, issue_type_config=issue_type_config)
case ReportOutputFormat.DEPENDENCIES:
report = DependencyReport(root_directory)
case _:
raise ValueError(output_format)
return report