cakephp / 4.4 / class-cake.database.typefactory.html

Class TypeFactory

Factory for building database type classes.

Namespace: Cake\Database

Property Summary

  • $_builtTypes protected static
    arrayCake\Database\TypeInterface>

    Contains a map of type object instances to be reused if needed.

  • $_types protected static
    array<string, string>

    List of supported database types. A human readable identifier is used as key and a complete namespaced class name as value representing the class that will do actual type conversions.

Method Summary

  • build() public static

    Returns a Type object capable of converting a type identified by name.

  • buildAll() public static

    Returns an arrays with all the mapped type objects, indexed by name.

  • clear() public static

    Clears out all created instances and mapped types classes, useful for testing

  • getMap() public static

    Get mapped class name for given type or map array.

  • map() public static

    Registers a new type identifier and maps it to a fully namespaced classname.

  • set() public static

    Set TypeInterface instance capable of converting a type identified by $name

  • setMap() public static

    Set type to classname mapping.

Method Detail

build() public static

build(string $name): Cake\Database\TypeInterface

Returns a Type object capable of converting a type identified by name.

Parameters

string $name

type identifier

Returns

Cake\Database\TypeInterface

Throws

InvalidArgumentException
If type identifier is unknown

buildAll() public static

buildAll(): arrayCake\Database\TypeInterface>

Returns an arrays with all the mapped type objects, indexed by name.

Returns

arrayCake\Database\TypeInterface>

clear() public static

clear(): void

Clears out all created instances and mapped types classes, useful for testing

Returns

void

getMap() public static

getMap(string|null $type = null): array<string>|string|null

Get mapped class name for given type or map array.

Parameters

string|null $type optional

Type name to get mapped class for or null to get map array.

Returns

array<string>|string|null

map() public static

map(string $type, string $className): void

Registers a new type identifier and maps it to a fully namespaced classname.

Parameters

string $type

Name of type to map.

string $className

The classname to register.

Returns

void

set() public static

set(string $name, Cake\Database\TypeInterface $instance): void

Set TypeInterface instance capable of converting a type identified by $name

Parameters

string $name

The type identifier you want to set.

Cake\Database\TypeInterface $instance

The type instance you want to set.

Returns

void

setMap() public static

setMap(array<string> $map): void

Set type to classname mapping.

Parameters

array<string> $map

List of types to be mapped.

Returns

void

Property Detail

$_builtTypes protected static

Contains a map of type object instances to be reused if needed.

Type

arrayCake\Database\TypeInterface>

$_types protected static

List of supported database types. A human readable identifier is used as key and a complete namespaced class name as value representing the class that will do actual type conversions.

Type

array<string, string>

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Database.TypeFactory.html