PHP Interface Neos\Flow\Property\TypeConverterInterface

All Type Converters should have NO INTERNAL STATE, such that they can be used as singletons and multiple times in succession (as this improves performance dramatically).
Afficher le fichier Open project: neos/flow-development-collection Interface Usage Examples

Méthodes publiques

Méthode Description
canConvertFrom ( mixed $source, string $targetType ) : boolean Here, the TypeConverter can do some additional runtime checks to see whether it can handle the given source data and the given target type.
convertFrom ( mixed $source, string $targetType, array $convertedChildProperties = [], Neos\Flow\Property\PropertyMappingConfigurationInterface $configuration = null ) : mixed | Neos\Error\Messages\Error Actually convert from $source to $targetType, taking into account the fully built $convertedChildProperties and $configuration.
getPriority ( ) : integer Return the priority of this TypeConverter. TypeConverters with a high priority are chosen before low priority.
getSourceChildPropertiesToBeConverted ( mixed $source ) : array Return a list of sub-properties inside the source object.
getSupportedSourceTypes ( ) : array Returns the list of source types the TypeConverter can handle.
getSupportedTargetType ( ) : string Return the target type this TypeConverter converts to.
getTargetTypeForSource ( mixed $source, string $originalTargetType, Neos\Flow\Property\PropertyMappingConfigurationInterface $configuration = null ) : string Returns the type for a given source, depending on e.g. the __type setting or other properties.
getTypeOfChildProperty ( string $targetType, string $propertyName, Neos\Flow\Property\PropertyMappingConfigurationInterface $configuration ) : string Return the type of a given sub-property inside the $targetType

Method Details

canConvertFrom() public méthode

Here, the TypeConverter can do some additional runtime checks to see whether it can handle the given source data and the given target type.
public canConvertFrom ( mixed $source, string $targetType ) : boolean
$source mixed the source data
$targetType string the type to convert to.
Résultat boolean TRUE if this TypeConverter can convert from $source to $targetType, FALSE otherwise.

convertFrom() public méthode

The return value can be one of three types: - an arbitrary object, or a simple type (which has been created while mapping). This is the normal case. - NULL, indicating that this object should *not* be mapped (i.e. a "File Upload" Converter could return NULL if no file has been uploaded, and a silent failure should occur. - An instance of \Neos\Error\Messages\Error -- This will be a user-visible error message later on. Furthermore, it should throw an Exception if an unexpected failure (like a security error) occurred or a configuration issue happened.
public convertFrom ( mixed $source, string $targetType, array $convertedChildProperties = [], Neos\Flow\Property\PropertyMappingConfigurationInterface $configuration = null ) : mixed | Neos\Error\Messages\Error
$source mixed
$targetType string
$convertedChildProperties array
$configuration Neos\Flow\Property\PropertyMappingConfigurationInterface
Résultat mixed | Neos\Error\Messages\Error the target type, or an error object if a user-error occurred

getPriority() public méthode

Return the priority of this TypeConverter. TypeConverters with a high priority are chosen before low priority.
public getPriority ( ) : integer
Résultat integer

getSourceChildPropertiesToBeConverted() public méthode

The "key" is the sub-property name, and the "value" is the value of the sub-property.
public getSourceChildPropertiesToBeConverted ( mixed $source ) : array
$source mixed
Résultat array

getSupportedSourceTypes() public méthode

Must be PHP simple types, classes or object is not allowed.
public getSupportedSourceTypes ( ) : array
Résultat array

getSupportedTargetType() public méthode

Can be a simple type or a class name.
public getSupportedTargetType ( ) : string
Résultat string

getTargetTypeForSource() public méthode

Returns the type for a given source, depending on e.g. the __type setting or other properties.
public getTargetTypeForSource ( mixed $source, string $originalTargetType, Neos\Flow\Property\PropertyMappingConfigurationInterface $configuration = null ) : string
$source mixed the source data
$originalTargetType string the type we originally want to convert to
$configuration Neos\Flow\Property\PropertyMappingConfigurationInterface
Résultat string

getTypeOfChildProperty() public méthode

Return the type of a given sub-property inside the $targetType
public getTypeOfChildProperty ( string $targetType, string $propertyName, Neos\Flow\Property\PropertyMappingConfigurationInterface $configuration ) : string
$targetType string
$propertyName string
$configuration Neos\Flow\Property\PropertyMappingConfigurationInterface
Résultat string the type of $propertyName in $targetType