diff options
author | Devian <devianleong@gmail.com> | 2021-04-22 17:11:12 +0800 |
---|---|---|
committer | Devian <devianleong@gmail.com> | 2021-04-22 17:11:12 +0800 |
commit | bf68fa166afb95d682007e7671c2b0692227bec5 (patch) | |
tree | 26091a1e5a821905b8bdba73fd1ddb95e12f887e /vendor/doctrine/event-manager/lib | |
parent | 745cf2431a71d0e6c5f08f8605839279b2f7496e (diff) |
Initial
Diffstat (limited to 'vendor/doctrine/event-manager/lib')
3 files changed, 0 insertions, 198 deletions
diff --git a/vendor/doctrine/event-manager/lib/Doctrine/Common/EventArgs.php b/vendor/doctrine/event-manager/lib/Doctrine/Common/EventArgs.php deleted file mode 100644 index 9b9cc05..0000000 --- a/vendor/doctrine/event-manager/lib/Doctrine/Common/EventArgs.php +++ /dev/null @@ -1,45 +0,0 @@ -<?php - -declare(strict_types=1); - -namespace Doctrine\Common; - -/** - * EventArgs is the base class for classes containing event data. - * - * This class contains no event data. It is used by events that do not pass state - * information to an event handler when an event is raised. The single empty EventArgs - * instance can be obtained through {@link getEmptyInstance}. - */ -class EventArgs -{ - /** - * Single instance of EventArgs. - * - * @var EventArgs - */ - private static $_emptyEventArgsInstance; - - /** - * Gets the single, empty and immutable EventArgs instance. - * - * This instance will be used when events are dispatched without any parameter, - * like this: EventManager::dispatchEvent('eventname'); - * - * The benefit from this is that only one empty instance is instantiated and shared - * (otherwise there would be instances for every dispatched in the abovementioned form). - * - * @link https://msdn.microsoft.com/en-us/library/system.eventargs.aspx - * @see EventManager::dispatchEvent - * - * @return EventArgs - */ - public static function getEmptyInstance() - { - if (! self::$_emptyEventArgsInstance) { - self::$_emptyEventArgsInstance = new EventArgs(); - } - - return self::$_emptyEventArgsInstance; - } -} diff --git a/vendor/doctrine/event-manager/lib/Doctrine/Common/EventManager.php b/vendor/doctrine/event-manager/lib/Doctrine/Common/EventManager.php deleted file mode 100644 index a0860e3..0000000 --- a/vendor/doctrine/event-manager/lib/Doctrine/Common/EventManager.php +++ /dev/null @@ -1,132 +0,0 @@ -<?php - -namespace Doctrine\Common; - -use function spl_object_hash; - -/** - * The EventManager is the central point of Doctrine's event listener system. - * Listeners are registered on the manager and events are dispatched through the - * manager. - */ -class EventManager -{ - /** - * Map of registered listeners. - * <event> => <listeners> - * - * @var object[][] - */ - private $_listeners = []; - - /** - * 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 EventArgs|null $eventArgs The event arguments to pass to the event handlers/listeners. - * If not supplied, the single empty EventArgs instance is used. - * - * @return void - */ - public function dispatchEvent($eventName, ?EventArgs $eventArgs = null) - { - if (! isset($this->_listeners[$eventName])) { - return; - } - - $eventArgs = $eventArgs ?? EventArgs::getEmptyInstance(); - - foreach ($this->_listeners[$eventName] as $listener) { - $listener->$eventName($eventArgs); - } - } - - /** - * Gets the listeners of a specific event or all listeners. - * - * @param string|null $event The name of the event. - * - * @return object[]|object[][] The event listeners for the specified event, or all event listeners. - */ - public function getListeners($event = null) - { - return $event ? $this->_listeners[$event] : $this->_listeners; - } - - /** - * Checks whether an event has any registered listeners. - * - * @param string $event - * - * @return bool TRUE if the specified event has any listeners, FALSE otherwise. - */ - public function hasListeners($event) - { - return ! empty($this->_listeners[$event]); - } - - /** - * Adds an event listener that listens on the specified events. - * - * @param string|string[] $events The event(s) to listen on. - * @param object $listener The listener object. - * - * @return void - */ - public function addEventListener($events, $listener) - { - // Picks the hash code related to that listener - $hash = spl_object_hash($listener); - - foreach ((array) $events as $event) { - // Overrides listener if a previous one was associated already - // Prevents duplicate listeners on same event (same instance only) - $this->_listeners[$event][$hash] = $listener; - } - } - - /** - * Removes an event listener from the specified events. - * - * @param string|string[] $events - * @param object $listener - * - * @return void - */ - public function removeEventListener($events, $listener) - { - // Picks the hash code related to that listener - $hash = spl_object_hash($listener); - - foreach ((array) $events as $event) { - unset($this->_listeners[$event][$hash]); - } - } - - /** - * Adds an EventSubscriber. The subscriber is asked for all the events it is - * interested in and added as a listener for these events. - * - * @param EventSubscriber $subscriber The subscriber. - * - * @return void - */ - public function addEventSubscriber(EventSubscriber $subscriber) - { - $this->addEventListener($subscriber->getSubscribedEvents(), $subscriber); - } - - /** - * Removes an EventSubscriber. The subscriber is asked for all the events it is - * interested in and removed as a listener for these events. - * - * @param EventSubscriber $subscriber The subscriber. - * - * @return void - */ - public function removeEventSubscriber(EventSubscriber $subscriber) - { - $this->removeEventListener($subscriber->getSubscribedEvents(), $subscriber); - } -} diff --git a/vendor/doctrine/event-manager/lib/Doctrine/Common/EventSubscriber.php b/vendor/doctrine/event-manager/lib/Doctrine/Common/EventSubscriber.php deleted file mode 100644 index 7d5e2ea..0000000 --- a/vendor/doctrine/event-manager/lib/Doctrine/Common/EventSubscriber.php +++ /dev/null @@ -1,21 +0,0 @@ -<?php - -declare(strict_types=1); - -namespace Doctrine\Common; - -/** - * An EventSubscriber knows himself what events he is interested in. - * If an EventSubscriber is added to an EventManager, the manager invokes - * {@link getSubscribedEvents} and registers the subscriber as a listener for all - * returned events. - */ -interface EventSubscriber -{ - /** - * Returns an array of events this subscriber wants to listen to. - * - * @return string[] - */ - public function getSubscribedEvents(); -} |