/** * Triggers the listeners of an event UNLESS they are only listening to a different queue. * Since we get an array of listener instances which are not tied any more to the service key, we have to do a slow * loop to find if any listener was tied to a particular queue... * * @param callable[] $listeners The event listeners. * @param string $eventName The name of the event to dispatch. * @param Event $event The event object to pass to the event handlers/listeners. */ protected function doDispatch($listeners, $eventName, Event $event) { foreach ($listeners as $id => $listener) { if (isset($this->listeners[$eventName])) { foreach ($this->listeners[$eventName] as $key => $val) { // services if ($val[0] === $listener[0]) { // queue names if ($val[1] != null && $val[1] != $event->getMessage()->getQueueName()) { continue 2; } break; } } } call_user_func($listener, $event, $eventName, $this); if ($event->isPropagationStopped()) { break; } } }
public function addFlash(Event $event) { $this->session->getFlashBag()->add($event->getType(), $event->getMessage()); }
public function onConditionChange(Event $event) { $message = array('Message' => $event->getMessage(), 'Subject' => 'Condition change'); // $this->awsSns->publish($message); $this->logger->info($event->getMessage()); }
/** * @param Event $event * * @return void */ private function setFlashMessageToEventParams(Event $event) { $this->flashHelper->setFlash($event->getMessageType(), $event->getMessage(), $event->getMessageParameters()); }