www.gusucode.com > CKFinder 文件管理器PHP版 v3.0源码程序 > code/core/connector/php/vendor/guzzle/guzzle/src/Guzzle/Common/AbstractHasDispatcher.php
<?php namespace Guzzle\Common; use Symfony\Component\EventDispatcher\EventDispatcher; use Symfony\Component\EventDispatcher\EventDispatcherInterface; use Symfony\Component\EventDispatcher\EventSubscriberInterface; /** * Class that holds an event dispatcher */ class AbstractHasDispatcher implements HasDispatcherInterface { /** @var EventDispatcherInterface */ protected $eventDispatcher; public static function getAllEvents() { return array(); } public function setEventDispatcher(EventDispatcherInterface $eventDispatcher) { $this->eventDispatcher = $eventDispatcher; return $this; } public function getEventDispatcher() { if (!$this->eventDispatcher) { $this->eventDispatcher = new EventDispatcher(); } return $this->eventDispatcher; } public function dispatch($eventName, array $context = array()) { return $this->getEventDispatcher()->dispatch($eventName, new Event($context)); } public function addSubscriber(EventSubscriberInterface $subscriber) { $this->getEventDispatcher()->addSubscriber($subscriber); return $this; } }