/** * Handle an event. * * @param EventInterface $event * * @return void */ public function handle(EventInterface $event) { if (!$event instanceof SerializableEvent) { throw new \InvalidArgumentException(sprintf('Cannot serialize %s event.', $event->getName())); } $this->publisher->publish(json_encode($event->toArray()), $event->getName()); }