Próbuję podłączyć się do zdarzeń konsoli symfony z standardową edycją symfony (2.3), ale to po prostu nie zadziała.Jak mogę słuchać zdarzeń konsoli w symfony?
stworzyłem słuchacza według ich example i postępuj guides on event registration:
namespace Acme\DemoBundle\EventListener;
use Symfony\Component\Console\Event\ConsoleCommandEvent;
use Symfony\Component\Console\ConsoleEvents;
class AcmeCommandListener
{
public function onConsoleCommand(ConsoleCommandEvent $event) {
// get the output instance
$output = $event->getOutput();
// get the command to be executed
$command = $event->getCommand();
// write something about the command
$output->writeln(sprintf('Before running command <info>%s</info>', $command->getName()));
}
}
i ktoś na liście mailingowej mi go zarejestrować jako wydarzenie w pojemniku usług. Zrobiłem to:
services:
kernel.listener.command_dispatch:
class: Acme\DemoBundle\EventListener\AcmeCommandListener
tags:
- { name: kernel.event_listener, event: console.command }
Ale oczywiście oznaczanie jest nieprawidłowe i nie mogę znaleźć poprawnych nazw. Jak to zrobić?
Czy używasz 'php app/console' lub niestandardowej aplikacji? – Touki
Używam standardowej wersji Symfony i chcę dodać zdarzenie uruchamiane przed wykonaniem polecenia 'app/console'. Pytałem już w grupie google z symfony i ktoś powiedział, że muszę go skonfigurować za pomocą usługi (jak próbowałem powyżej). – acme