5 * Contains \Drupal\Console\Core\EventSubscriber\RemoveMessagesListener.
8 namespace Drupal\Console\Core\EventSubscriber;
10 use Symfony\Component\Console\ConsoleEvents;
11 use Symfony\Component\Console\Event\ConsoleTerminateEvent;
12 use Symfony\Component\EventDispatcher\EventSubscriberInterface;
13 use Drupal\Console\Core\Command\Command;
14 use Drupal\Console\Core\Utils\TranslatorManagerInterface;
15 use Drupal\Console\Core\Utils\MessageManager;
18 * Class RemoveMessagesListener
20 * @package Drupal\Console\Core\EventSubscriber
22 class RemoveMessagesListener implements EventSubscriberInterface
27 protected $messageManager;
30 * ShowGenerateInlineListener constructor.
32 * @param MessageManager $messageManager
34 public function __construct(
35 MessageManager $messageManager
37 $this->messageManager = $messageManager;
41 * @param ConsoleTerminateEvent $event
43 public function removeMessages(ConsoleTerminateEvent $event)
45 if ($event->getExitCode() != 0) {
49 /* @var Command $command */
50 $command = $event->getCommand();
52 $commandName = $command->getName();
54 $this->messageManager->remove($commandName);
60 public static function getSubscribedEvents()
62 return [ConsoleEvents::TERMINATE => 'removeMessages'];