/**
* Factory method to create type instances.
* Type instances are implemented as flyweights.
*
* @static
* @throws OXMException
* @param string $name The name of the type (as returned by getName()).
* @return \Doctrine\OXM\Types\Type
*/
public static function getType($name)
{
if (!isset(self::$_typeObjects[$name])) {
if (!isset(self::$_typesMap[$name])) {
throw OXMException::unknownType($name);
}
self::$_typeObjects[$name] = new self::$_typesMap[$name]();
}
return self::$_typeObjects[$name];
}