/**
  * Show an issue report
  *
  * @param integer $count
  * @param string $extensionKey
  */
 protected function issueReport($count, $extensionKey = '')
 {
     $forExtension = trim($extensionKey) ? ' for extension: ' . $extensionKey : '';
     switch ((int) $count) {
         case 0:
             $this->messageBus->successMessage('No issues found' . $forExtension, TRUE);
             break;
         case 1:
             $this->messageBus->warningMessage($count . ' issue found' . $forExtension, TRUE);
             break;
         default:
             $this->messageBus->warningMessage($count . ' issues found' . $forExtension, TRUE);
     }
 }
 /**
  * Renders a Report of Extensions as ASCII
  *
  * @return void
  */
 private function report()
 {
     $registry = Tx_Smoothmigration_Service_Check_Registry::getInstance();
     $issuesWithInspections = $this->issueRepository->findAllGroupedByExtensionAndInspection();
     foreach ($issuesWithInspections as $extensionKey => $inspections) {
         $count = 0;
         foreach ($inspections as $issues) {
             /** @var Tx_Smoothmigration_Domain_Model_Issue $singleIssue */
             foreach ($issues as $singleIssue) {
                 if ($count == 0) {
                     // Render Extension Key
                     $this->messageBus->headerMessage('Extension : ' . $singleIssue->getExtension(), 'info');
                 }
                 $check = $registry->getActiveCheckByIdentifier($singleIssue->getInspection());
                 if ($check) {
                     $this->messageBus->message($check->getResultAnalyzer()->getSolution($singleIssue));
                 }
                 $count++;
             }
         }
         $this->messageBus->successMessage('Total: ' . $count . ' issues in ' . $extensionKey . LF);
     }
 }