Source of file ExtensionManager.php
Size: 2,077 Bytes - Last Modified: 2014-03-12T23:21:18+01:00
/home/theseer/Downloads/ZendFramework-2.3.0/library/Zend/Feed/Writer/ExtensionManager.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 | <?php /** * Zend Framework (http://framework.zend.com/) * * @link http://github.com/zendframework/zf2 for the canonical source repository * @copyright Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ namespace Zend\Feed\Writer; /** * Default implementation of ExtensionManagerInterface * * Decorator of ExtensionPluginManager. */ class ExtensionManager implements ExtensionManagerInterface { protected $pluginManager; /** * Constructor * * Seeds the extension manager with a plugin manager; if none provided, * creates an instance. * * @param null|ExtensionPluginManager $pluginManager */ public function __construct(ExtensionPluginManager $pluginManager = null) { if (null === $pluginManager) { $pluginManager = new ExtensionPluginManager(); } $this->pluginManager = $pluginManager; } /** * Method overloading * * Proxy to composed ExtensionPluginManager instance. * * @param string $method * @param array $args * @return mixed * @throws Exception\BadMethodCallException */ public function __call($method, $args) { if (!method_exists($this->pluginManager, $method)) { throw new Exception\BadMethodCallException(sprintf( 'Method by name of %s does not exist in %s', $method, __CLASS__ )); } return call_user_func_array(array($this->pluginManager, $method), $args); } /** * Get the named extension * * @param string $name * @return Extension\AbstractEntry|Extension\AbstractFeed */ public function get($name) { return $this->pluginManager->get($name); } /** * Do we have the named extension? * * @param string $name * @return bool */ public function has($name) { return $this->pluginManager->has($name); } } |