Add command name to the PreCommandRun event

main
Jordi Boggiano 7 years ago
parent b1bfb9bb65
commit 352aefe48c

@ -131,7 +131,7 @@ abstract class BaseCommand extends Command
if (null === $composer) { if (null === $composer) {
$composer = Factory::createGlobal($this->getIO(), false); $composer = Factory::createGlobal($this->getIO(), false);
} }
$preCommandRunEvent = new PreCommandRunEvent(PluginEvents::PRE_COMMAND_RUN, $input); $preCommandRunEvent = new PreCommandRunEvent(PluginEvents::PRE_COMMAND_RUN, $input, $this->getName());
$composer->getEventDispatcher()->dispatch($preCommandRunEvent->getName(), $preCommandRunEvent); $composer->getEventDispatcher()->dispatch($preCommandRunEvent->getName(), $preCommandRunEvent);
if (true === $input->hasParameterOption(array('--no-ansi')) && $input->hasOption('no-progress')) { if (true === $input->hasParameterOption(array('--no-ansi')) && $input->hasOption('no-progress')) {

@ -27,16 +27,23 @@ class PreCommandRunEvent extends Event
*/ */
private $input; private $input;
/**
* @var string
*/
private $command;
/** /**
* Constructor. * Constructor.
* *
* @param string $name The event name * @param string $name The event name
* @param InputInterface $input * @param InputInterface $input
* @param string $command The command about to be executed
*/ */
public function __construct($name, InputInterface $input) public function __construct($name, InputInterface $input, $command)
{ {
parent::__construct($name); parent::__construct($name);
$this->input = $input; $this->input = $input;
$this->command = $command;
} }
/** /**
@ -48,4 +55,14 @@ class PreCommandRunEvent extends Event
{ {
return $this->input; return $this->input;
} }
/**
* Returns the command about to be executed
*
* @return string
*/
public function getCommand()
{
return $this->command;
}
} }

Loading…
Cancel
Save