[TASK] Cleanup EXT:frontend
[Packages/TYPO3.CMS.git] / typo3 / sysext / frontend / Classes / ContentObject / Menu / MenuContentObjectFactory.php
index f06d495..8a98ca8 100644 (file)
@@ -1,40 +1,28 @@
 <?php
 namespace TYPO3\CMS\Frontend\ContentObject\Menu;
 
-/***************************************************************
- *  Copyright notice
+/*
+ * This file is part of the TYPO3 CMS project.
  *
- *  (c) 2013 Christian Kuhn <lolli@schwarzbu.ch>
- *  All rights reserved
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
  *
- *  This script is part of the TYPO3 project. The TYPO3 project is
- *  free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
  *
- *  The GNU General Public License can be found at
- *  http://www.gnu.org/copyleft/gpl.html.
- *  A copy is found in the textfile GPL.txt and important notices to the license
- *  from the author is found in LICENSE.txt distributed with these scripts.
- *
- *
- *  This script is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  This copyright notice MUST APPEAR in all copies of the script!
- ***************************************************************/
+ * The TYPO3 project - inspiring people to share!
+ */
+
+use TYPO3\CMS\Core\Utility\GeneralUtility;
+use TYPO3\CMS\Core\SingletonInterface;
 
 /**
  * Factory for menu content objects. Allows overriding the default
  * types like 'GMENU' with an own implementation (only one possible)
  * and new types can be registered.
- *
- * @author Christian Kuhn <lolli@schwarzbu.ch>
  */
-class MenuContentObjectFactory implements \TYPO3\CMS\Core\SingletonInterface {
+class MenuContentObjectFactory implements SingletonInterface {
 
        /**
         * Register of TypoScript keys to according render class
@@ -42,23 +30,23 @@ class MenuContentObjectFactory implements \TYPO3\CMS\Core\SingletonInterface {
         * @var array
         */
        protected $menuTypeToClassMapping = array(
-               'GMENU' => 'TYPO3\\CMS\\Frontend\\ContentObject\\Menu\\GraphicalMenuContentObject',
-               'TMENU' => 'TYPO3\\CMS\\Frontend\\ContentObject\\Menu\\TextMenuContentObject',
-               'IMGMENU' => 'TYPO3\\CMS\\Frontend\\ContentObject\\Menu\\ImageMenuContentObject',
-               'JSMENU' => 'TYPO3\\CMS\\Frontend\\ContentObject\\Menu\\JavaScriptMenuContentObject',
+               'GMENU' => GraphicalMenuContentObject::class,
+               'TMENU' => TextMenuContentObject::class,
+               'IMGMENU' => ImageMenuContentObject::class,
+               'JSMENU' => JavaScriptMenuContentObject::class,
        );
 
        /**
         * Gets a typo script string like 'TMENU' and returns an object of this type
         *
         * @param string $type
-        * @return object Menu object
+        * @return AbstractMenuContentObject Menu object
         * @throws Exception\NoSuchMenuTypeException
         */
        public function getMenuObjectByType($type = '') {
-               $uppercasedClassname = strtoupper($type);
-               if (array_key_exists($uppercasedClassname, $this->menuTypeToClassMapping)) {
-                       $object = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance($this->menuTypeToClassMapping[$uppercasedClassname]);
+               $upperCasedClassName = strtoupper($type);
+               if (array_key_exists($upperCasedClassName, $this->menuTypeToClassMapping)) {
+                       $object = GeneralUtility::makeInstance($this->menuTypeToClassMapping[$upperCasedClassName]);
                } else {
                        throw new Exception\NoSuchMenuTypeException(
                                'Menu type ' . (string)$type . ' has no implementing class.',
@@ -84,4 +72,5 @@ class MenuContentObjectFactory implements \TYPO3\CMS\Core\SingletonInterface {
                }
                $this->menuTypeToClassMapping[strtoupper($type)] = $className;
        }
+
 }