/**
  * @param SearchEvent $event
  */
 public function onSearchFinish(SearchEvent $event)
 {
     $input = $event->getInput();
     $output = $event->getOutput();
     $file = $input->getOption('file');
     if ($file) {
         $this->saveToFile($file, $event->getBooks());
         $output->writeln("Results saved to {$file}");
     }
 }
 /**
  * @param SearchEvent $event
  */
 public function onSearchFinish(SearchEvent $event)
 {
     $output = $event->getOutput();
     $books = $event->getBooks();
     $output->writeLn('');
     if (empty($books)) {
         $output->writeLn('No books found.');
         return;
     }
     $table = new Table($output);
     $table->setHeaders(['Title', 'Link']);
     $table->setRows($books);
     $table->render();
 }