c9a88c76aba3cdf3059489e7e6790a14df27f371
[yaffs-website] / vendor / zendframework / zend-feed / src / Writer / StandaloneExtensionManager.php
1 <?php
2 /**
3  * Zend Framework (http://framework.zend.com/)
4  *
5  * @link      http://github.com/zendframework/zf2 for the canonical source repository
6  * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
7  * @license   http://framework.zend.com/license/new-bsd New BSD License
8  */
9
10 namespace Zend\Feed\Writer;
11
12 class StandaloneExtensionManager implements ExtensionManagerInterface
13 {
14     private $extensions = [
15         'Atom\Renderer\Feed'           => Extension\Atom\Renderer\Feed::class,
16         'Content\Renderer\Entry'       => Extension\Content\Renderer\Entry::class,
17         'DublinCore\Renderer\Entry'    => Extension\DublinCore\Renderer\Entry::class,
18         'DublinCore\Renderer\Feed'     => Extension\DublinCore\Renderer\Feed::class,
19         'ITunes\Entry'                 => Extension\ITunes\Entry::class,
20         'ITunes\Feed'                  => Extension\ITunes\Feed::class,
21         'ITunes\Renderer\Entry'        => Extension\ITunes\Renderer\Entry::class,
22         'ITunes\Renderer\Feed'         => Extension\ITunes\Renderer\Feed::class,
23         'Slash\Renderer\Entry'         => Extension\Slash\Renderer\Entry::class,
24         'Threading\Renderer\Entry'     => Extension\Threading\Renderer\Entry::class,
25         'WellFormedWeb\Renderer\Entry' => Extension\WellFormedWeb\Renderer\Entry::class,
26     ];
27
28     /**
29      * Do we have the extension?
30      *
31      * @param  string $extension
32      * @return bool
33      */
34     public function has($extension)
35     {
36         return array_key_exists($extension, $this->extensions);
37     }
38
39     /**
40      * Retrieve the extension
41      *
42      * @param  string $extension
43      * @return mixed
44      */
45     public function get($extension)
46     {
47         $class = $this->extensions[$extension];
48         return new $class();
49     }
50 }