12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- <?php
- /*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace Symfony\Component\EventDispatcher;
- /**
- * The EventDispatcherInterface is the central point of Symfony's event listener system.
- * Listeners are registered on the manager and events are dispatched through the
- * manager.
- *
- * @author Bernhard Schussek <bschussek@gmail.com>
- */
- interface EventDispatcherInterface
- {
- /**
- * Dispatches an event to all registered listeners.
- *
- * @param string $eventName The name of the event to dispatch. The name of
- * the event is the name of the method that is
- * invoked on listeners.
- * @param Event $event The event to pass to the event handlers/listeners
- * If not supplied, an empty Event instance is created.
- *
- * @return Event
- */
- public function dispatch($eventName, Event $event = null);
- /**
- * Adds an event listener that listens on the specified events.
- *
- * @param string $eventName The event to listen on
- * @param callable $listener The listener
- * @param int $priority The higher this value, the earlier an event
- * listener will be triggered in the chain (defaults to 0)
- */
- public function addListener($eventName, $listener, $priority = 0);
- /**
- * Adds an event subscriber.
- *
- * The subscriber is asked for all the events he is
- * interested in and added as a listener for these events.
- *
- * @param EventSubscriberInterface $subscriber The subscriber
- */
- public function addSubscriber(EventSubscriberInterface $subscriber);
- /**
- * Removes an event listener from the specified events.
- *
- * @param string $eventName The event to remove a listener from
- * @param callable $listener The listener to remove
- */
- public function removeListener($eventName, $listener);
- /**
- * Removes an event subscriber.
- *
- * @param EventSubscriberInterface $subscriber The subscriber
- */
- public function removeSubscriber(EventSubscriberInterface $subscriber);
- /**
- * Gets the listeners of a specific event or all listeners sorted by descending priority.
- *
- * @param string $eventName The name of the event
- *
- * @return array The event listeners for the specified event, or all event listeners by event name
- */
- public function getListeners($eventName = null);
- /**
- * Checks whether an event has any registered listeners.
- *
- * @param string $eventName The name of the event
- *
- * @return bool true if the specified event has any listeners, false otherwise
- */
- public function hasListeners($eventName = null);
- }
|