[TASK] Backport Flow property mapper
[Packages/TYPO3.CMS.git] / typo3 / sysext / extbase / Classes / Service / TypeHandlingService.php
1 <?php
2 namespace TYPO3\CMS\Extbase\Service;
3
4 /***************************************************************
5 * Copyright notice
6 *
7 * (c) 2010-2013 Extbase Team (http://forge.typo3.org/projects/typo3v4-mvc)
8 * Extbase is a backport of TYPO3 Flow. All credits go to the TYPO3 Flow team.
9 * All rights reserved
10 *
11 * This script is part of the TYPO3 project. The TYPO3 project is
12 * free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * The GNU General Public License can be found at
18 * http://www.gnu.org/copyleft/gpl.html.
19 * A copy is found in the textfile GPL.txt and important notices to the license
20 * from the author is found in LICENSE.txt distributed with these scripts.
21 *
22 *
23 * This script is distributed in the hope that it will be useful,
24 * but WITHOUT ANY WARRANTY; without even the implied warranty of
25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 * GNU General Public License for more details.
27 *
28 * This copyright notice MUST APPEAR in all copies of the script!
29 ***************************************************************/
30
31 use TYPO3\CMS\Extbase\Utility\TypeHandlingUtility;
32
33 /**
34 * PHP type handling functions
35 * @deprecated since 6.1, will be removed two versions later
36 */
37 class TypeHandlingService implements \TYPO3\CMS\Core\SingletonInterface {
38
39 /**
40 * A property type parse pattern.
41 */
42 const PARSE_TYPE_PATTERN = TypeHandlingUtility::PARSE_TYPE_PATTERN;
43
44 /**
45 * A type pattern to detect literal types.
46 */
47 const LITERAL_TYPE_PATTERN = TypeHandlingUtility::LITERAL_TYPE_PATTERN;
48
49 /**
50 * Adds (defines) a specific property and its type.
51 *
52 * @param string $type Type of the property (see PARSE_TYPE_PATTERN)
53 * @throws \InvalidArgumentException
54 * @return array An array with information about the type
55 */
56 public function parseType($type) {
57 return TypeHandlingUtility::parseType($type);
58 }
59
60 /**
61 * Normalize data types so they match the PHP type names:
62 * int -> integer
63 * float -> double
64 * bool -> boolean
65 *
66 * @param string $type Data type to unify
67 * @return string unified data type
68 */
69 public function normalizeType($type) {
70 return TypeHandlingUtility::normalizeType($type);
71 }
72
73 /**
74 * Returns TRUE if the $type is a literal.
75 *
76 * @param string $type
77 * @return boolean
78 */
79 public function isLiteral($type) {
80 return TypeHandlingUtility::isLiteral($type);
81 }
82
83 /**
84 * Returns TRUE if the $type is a simple type.
85 *
86 * @param string $type
87 * @return boolean
88 */
89 public function isSimpleType($type) {
90 return TypeHandlingUtility::isSimpleType($type);
91 }
92 }
93
94 ?>