public function perform(AbstractEvent $event) { $data = $event->data(); $job = ''; if (!empty($data['job'])) { $job = $data['job']; } $this->logger()->info(sprintf("%s: %s\n", $event->name(), json_encode($job))); }
public function handle(AbstractEvent $event) { $events = $this->implementedEvents(); if (empty($events)) { return; } if (!isset($events[$event->getName()])) { return; } $handler = $events[$event->getName()]; if (!method_exists($this, $handler)) { return; } return $this->{$handler}($event); }
/** * Invoke the the handle method on a list of listeners * * @param array $listeners * @param AbstractEvent $event * @param array $arguments */ protected function invokeListeners(array $listeners, AbstractEvent $event, array $arguments) { foreach ($listeners as $listener) { call_user_func_array([$listener, 'handle'], $arguments); if ($event->isPropagationStopped()) { break; } } }