Added the Search API Synonym module to deal specifically with licence and license...
[yaffs-website] / vendor / drupal / console-core / src / EventSubscriber / RemoveMessagesListener.php
1 <?php
2
3 /**
4  * @file
5  * Contains \Drupal\Console\Core\EventSubscriber\RemoveMessagesListener.
6  */
7
8 namespace Drupal\Console\Core\EventSubscriber;
9
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;
16
17 /**
18  * Class RemoveMessagesListener
19  *
20  * @package Drupal\Console\Core\EventSubscriber
21  */
22 class RemoveMessagesListener implements EventSubscriberInterface
23 {
24     /**
25      * @var MessageManager
26      */
27     protected $messageManager;
28
29     /**
30      * ShowGenerateInlineListener constructor.
31      *
32      * @param MessageManager $messageManager
33      */
34     public function __construct(
35         MessageManager $messageManager
36     ) {
37         $this->messageManager = $messageManager;
38     }
39
40     /**
41      * @param ConsoleTerminateEvent $event
42      */
43     public function removeMessages(ConsoleTerminateEvent $event)
44     {
45         if ($event->getExitCode() != 0) {
46             return;
47         }
48
49         /* @var Command $command */
50         $command = $event->getCommand();
51
52         $commandName = $command->getName();
53
54         $this->messageManager->remove($commandName);
55     }
56
57     /**
58      * @{@inheritdoc}
59      */
60     public static function getSubscribedEvents()
61     {
62         return [ConsoleEvents::TERMINATE => 'removeMessages'];
63     }
64 }