public function TraceableEventDispatcher::logSkippedListeners

This is a private method and must not be used.

This method is public because it is used in a closure. Whenever Symfony will require PHP 5.4, this could be changed to a proper private method.

File

drupal/core/vendor/symfony/http-kernel/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php, line 200

Class

TraceableEventDispatcher
Collects some data about event listeners.

Namespace

Symfony\Component\HttpKernel\Debug

Code

public function logSkippedListeners($eventName, Event $event, $listener) {
  if (null === $this->logger) {
    return;
  }
  $info = $this
    ->getListenerInfo($listener, $eventName);
  $this->logger
    ->debug(sprintf('Listener "%s" stopped propagation of the event "%s".', $info['pretty'], $eventName));
  $skippedListeners = $this
    ->getListeners($eventName);
  $skipped = false;
  foreach ($skippedListeners as $skippedListener) {
    $skippedListener = $this
      ->unwrapListener($skippedListener);
    if ($skipped) {
      $info = $this
        ->getListenerInfo($skippedListener, $eventName);
      $this->logger
        ->debug(sprintf('Listener "%s" was not called for event "%s".', $info['pretty'], $eventName));
    }
    if ($skippedListener === $listener) {
      $skipped = true;
    }
  }
}