comparison vendor/zendframework/zend-feed/src/Reader/StandaloneExtensionManager.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 7a779792577d
comparison
equal deleted inserted replaced
-1:000000000000 0:4c8ae668cc8c
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\Reader;
11
12 class StandaloneExtensionManager implements ExtensionManagerInterface
13 {
14 private $extensions = [
15 'Atom\Entry' => 'Zend\Feed\Reader\Extension\Atom\Entry',
16 'Atom\Feed' => 'Zend\Feed\Reader\Extension\Atom\Feed',
17 'Content\Entry' => 'Zend\Feed\Reader\Extension\Content\Entry',
18 'CreativeCommons\Entry' => 'Zend\Feed\Reader\Extension\CreativeCommons\Entry',
19 'CreativeCommons\Feed' => 'Zend\Feed\Reader\Extension\CreativeCommons\Feed',
20 'DublinCore\Entry' => 'Zend\Feed\Reader\Extension\DublinCore\Entry',
21 'DublinCore\Feed' => 'Zend\Feed\Reader\Extension\DublinCore\Feed',
22 'Podcast\Entry' => 'Zend\Feed\Reader\Extension\Podcast\Entry',
23 'Podcast\Feed' => 'Zend\Feed\Reader\Extension\Podcast\Feed',
24 'Slash\Entry' => 'Zend\Feed\Reader\Extension\Slash\Entry',
25 'Syndication\Feed' => 'Zend\Feed\Reader\Extension\Syndication\Feed',
26 'Thread\Entry' => 'Zend\Feed\Reader\Extension\Thread\Entry',
27 'WellFormedWeb\Entry' => 'Zend\Feed\Reader\Extension\WellFormedWeb\Entry',
28 ];
29
30 /**
31 * Do we have the extension?
32 *
33 * @param string $extension
34 * @return bool
35 */
36 public function has($extension)
37 {
38 return array_key_exists($extension, $this->extensions);
39 }
40
41 /**
42 * Retrieve the extension
43 *
44 * @param string $extension
45 * @return Extension\AbstractEntry|Extension\AbstractFeed
46 */
47 public function get($extension)
48 {
49 $class = $this->extensions[$extension];
50 return new $class();
51 }
52 }