public function ContainerAwareEventDispatcher::removeListener in Zircon Profile 8.0
Same name in this branch
- 8.0 vendor/symfony/event-dispatcher/ContainerAwareEventDispatcher.php \Symfony\Component\EventDispatcher\ContainerAwareEventDispatcher::removeListener()
- 8.0 core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php \Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher::removeListener()
Same name and namespace in other branches
- 8 core/lib/Drupal/Component/EventDispatcher/ContainerAwareEventDispatcher.php \Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher::removeListener()
Removes an event listener from the specified events.
Parameters
string $eventName The event to remove a listener from:
callable $listener The listener to remove:
Overrides EventDispatcherInterface::removeListener
1 call to ContainerAwareEventDispatcher::removeListener()
- ContainerAwareEventDispatcher::removeSubscriber in core/
lib/ Drupal/ Component/ EventDispatcher/ ContainerAwareEventDispatcher.php - Removes an event subscriber.
File
- core/
lib/ Drupal/ Component/ EventDispatcher/ ContainerAwareEventDispatcher.php, line 182 - Contains \Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher.
Class
- ContainerAwareEventDispatcher
- A performance optimized container aware event dispatcher.
Namespace
Drupal\Component\EventDispatcherCode
public function removeListener($event_name, $listener) {
if (!isset($this->listeners[$event_name])) {
return;
}
foreach ($this->listeners[$event_name] as $priority => $definitions) {
foreach ($definitions as $key => $definition) {
if (!isset($definition['callable'])) {
if (!$this->container
->initialized($definition['service'][0])) {
continue;
}
$definition['callable'] = [
$this->container
->get($definition['service'][0]),
$definition['service'][1],
];
}
if ($definition['callable'] === $listener) {
unset($this->listeners[$event_name][$priority][$key]);
}
}
}
}