private function processResults($class, $count)
{
$this->cleanResults->bindValue(':analyzer', $class, \SQLITE3_TEXT);
$this->cleanResults->execute();
$this->stmtResultsCounts->bindValue(':class', $class, \SQLITE3_TEXT);
$this->stmtResultsCounts->bindValue(':count', $count, \SQLITE3_INTEGER);
$result = $this->stmtResultsCounts->execute();
$this->log->log("{$class} : {$count}\n");
// No need to go further
if ($count <= 0) {
return;
}
$this->stmtResults->bindValue(':class', $class, \SQLITE3_TEXT);
$analyzer = Analyzer::getInstance($class);
$res = $analyzer->getDump();
$saved = 0;
$severity = $analyzer->getSeverity();
foreach ($res as $id => $result) {
if (!is_object($result)) {
$this->log->log("Object expected but not found\n" . print_r($result, true) . "\n");
continue;
}
if (!isset($result->class)) {
continue;
}
$this->stmtResults->bindValue(':fullcode', $result->fullcode, \SQLITE3_TEXT);
$this->stmtResults->bindValue(':file', $result->file, \SQLITE3_TEXT);
$this->stmtResults->bindValue(':line', $result->line, \SQLITE3_INTEGER);
$this->stmtResults->bindValue(':namespace', $result->{'namespace'}, \SQLITE3_TEXT);
$this->stmtResults->bindValue(':class', $result->class, \SQLITE3_TEXT);
$this->stmtResults->bindValue(':function', $result->function, \SQLITE3_TEXT);
$this->stmtResults->bindValue(':analyzer', $class, \SQLITE3_TEXT);
$this->stmtResults->bindValue(':severity', $severity, \SQLITE3_TEXT);
$this->stmtResults->execute();
++$saved;
}
$this->log->log("{$class} : dumped {$saved}");
if ($count != $saved) {
display("{$saved} results saved, {$count} expected for {$class}\n");
} else {
display("All {$saved} results saved for {$class}\n");
}
}