MetricComputer computer = new MetricComputer(classRepository, errorStream, whitelist, printDepth);
HypotheticalCostModel hypotheticalCostModel = new HypotheticalCostModel(costModel);
IssuesReporter issuesReporter = new IssuesReporter(
new TriageIssuesQueue<ClassIssues>(maxAcceptableCost,
maxClassesInReport, new ClassIssues.TotalCostComparator()), hypotheticalCostModel);
ReportOptions options = new ReportOptions(cyclomaticCost, globalCost, constructorMultiplier,
maxExcellentCost, maxAcceptableCost, maxClassesInReport, -1, -1, printDepth, -1, "", "");
SourceLoader sourceLoader = new SourceLoader(classPath);
AnalysisModel analysisModel = new AnalysisModel(issuesReporter);
ReportModel reportModel = new HtmlReportModel(costModel, analysisModel, options);