qtools_profiler-8.x-1.x-dev/src/XHProfLib/Report/ReportEngine.php
src/XHProfLib/Report/ReportEngine.php
<?php
namespace Drupal\qtools_profiler\XHProfLib\Report;
use Drupal\qtools_profiler\XHProfLib\Parser\DiffParser;
use Drupal\qtools_profiler\XHProfLib\Parser\Parser;
use Drupal\qtools_profiler\XHProfLib\Run;
/**
* Class ReportEngine
*/
class ReportEngine {
/**
* @param $url_params
* @param $source
* @param Run $run
* @param $wts
* @param $symbol
* @param $sort
* @param Run $run1
* @param Run $run2
*
* @return ReportInterface
*/
public function getReport($url_params, $source, Run $run, $wts, $symbol, $sort = 'wt', Run $run1 = NULL, Run $run2 = NULL) {
$report = NULL;
// specific run to display
if ($run) {
$parser = new Parser($run, $sort, $symbol);
$report = new Report($parser);
}
// diff report for two runs
else {
if ($run1 && $run2) {
$report = new DiffParser($url_params, $run1->getSymbols(), '', $run2->getSymbols(), '', $symbol, $sort, $run1, $run2);
$report = new DiffReport($report);
}
}
return $report;
}
}
