Пример #1
0
 /**
  * Возвращает менеджер событий
  * @internal
  * @throws RequiredDependencyException если фабрика событий и менеджеров событий не была внедрена
  * @return IEventManager
  */
 public function getEventManager()
 {
     if (!$this->traitEventManager) {
         if (!$this->traitEventFactory) {
             $this->traitEventFactory = new EventFactory();
         }
         $this->traitEventManager = $this->traitEventFactory->createEventManager();
         $this->bindLocalEvents();
     }
     return $this->traitEventManager;
 }
Пример #2
0
 /**
  * {@inheritdoc}
  */
 public function fireEvent($eventType, $target, array $params = [], array $tags = [])
 {
     if (!isset($this->eventHandlers[$eventType]) && is_null($this->attachedManagers)) {
         return false;
     }
     $event = $this->eventFactory->createEvent($eventType, $target, $params, $tags);
     return $this->propagateEvent($eventType, $event);
 }