You are here

trait EventDispatcherTrait in Feeds 8.3

Wrapper methods for the event dispatcher interface.

If the class is capable of injecting services from the container, it should inject the 'event_dispatcher' service and assign it to $this->eventDispatcher.

Hierarchy

See also

\Symfony\Component\EventDispatcher\EventDispatcherInterface

3 files declare their use of EventDispatcherTrait
FeedHandlerBase.php in src/FeedHandlerBase.php
FeedQueueWorkerBase.php in src/Plugin/QueueWorker/FeedQueueWorkerBase.php
FeedsExecutable.php in src/FeedsExecutable.php

File

src/Event/EventDispatcherTrait.php, line 17

Namespace

Drupal\feeds\Event
View source
trait EventDispatcherTrait {

  /**
   * The event dispatcher service.
   *
   * @var \Symfony\Component\EventDispatcher\EventDispatcherInterface
   */
  private $_eventDispatcher;

  /**
   * Dispatches an event.
   *
   * @param string $event_name
   *   The name of the event.
   * @param \Symfony\Component\EventDispatcher\Event $event
   *   The event to dispatch.
   *
   * @return \Symfony\Component\EventDispatcher\Event
   *   The invoked event.
   */
  protected function dispatchEvent($event_name, Event $event = NULL) {
    return $this
      ->getEventDispatcher()
      ->dispatch($event_name, $event);
  }

  /**
   * Returns the event dispatcher service.
   *
   * @return \Symfony\Component\EventDispatcher\EventDispatcherInterface
   *   The event dispatcher service.
   */
  protected function getEventDispatcher() {
    if (!isset($this->_eventDispatcher)) {
      $this->_eventDispatcher = \Drupal::service('event_dispatcher');
    }
    return $this->_eventDispatcher;
  }

  /**
   * Sets the event dispatcher service to use.
   *
   * @param \Symfony\Component\EventDispatcher\EventDispatcherInterface $event_dispatcher
   *   The string translation service.
   */
  public function setEventDispatcher(EventDispatcherInterface $event_dispatcher) {
    $this->_eventDispatcher = $event_dispatcher;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
EventDispatcherTrait::$_eventDispatcher private property The event dispatcher service.
EventDispatcherTrait::dispatchEvent protected function Dispatches an event.
EventDispatcherTrait::getEventDispatcher protected function Returns the event dispatcher service.
EventDispatcherTrait::setEventDispatcher public function Sets the event dispatcher service to use.