GetterMetadata
class GetterMetadata extends MemberMetadata
Stores all metadata needed for validating a class property via its getter method.
A property getter is any method that is equal to the property's name, prefixed with either "get" or "is". That method will be used to access the property's value.
The getter will be invoked by reflection, so the access of private and protected getters is supported.
This class supports serialization and cloning.
Properties
Constraint[] | $constraints | from GenericMetadata | |
array | $constraintsByGroup | from GenericMetadata | |
int | $cascadingStrategy | The strategy for cascading objects. | from GenericMetadata |
int | $traversalStrategy | The strategy for traversing traversable objects. | from GenericMetadata |
string | $class | from MemberMetadata | |
string | $name | from MemberMetadata | |
string | $property | from MemberMetadata |
Methods
string[] | __sleep() Returns the names of the properties that should be serialized. | from MemberMetadata |
__clone() Clones this object. | from GenericMetadata | |
$this | addConstraint(Constraint $constraint) Adds a constraint. | from MemberMetadata |
$this | addConstraints(array $constraints) Adds an list of constraints. | from GenericMetadata |
Constraint[] | getConstraints() Returns all constraints of this element. | from GenericMetadata |
bool | hasConstraints() Returns whether this element has any constraints. | from GenericMetadata |
Constraint[] | findConstraints(string $group) Returns all constraints for a given validation group. | from GenericMetadata |
int | getCascadingStrategy() Returns the strategy for cascading objects. | from GenericMetadata |
int | getTraversalStrategy() Returns the strategy for traversing traversable objects. | from GenericMetadata |
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) deprecated Exists for compatibility with the deprecated {@link Symfony\Component\Validator\MetadataInterface}. | from MemberMetadata | |
__construct(string $class, string $property, string|null $method = null) | ||
string | getName() Returns the name of the member. | from MemberMetadata |
string | getClassName() Returns the name of the backing PHP class. | from MemberMetadata |
string | getPropertyName() Returns the name of the property. | from MemberMetadata |
bool | isPublic(object|string $objectOrClassName) Returns whether this member is public. | from MemberMetadata |
bool | isProtected(object|string $objectOrClassName) Returns whether this member is protected. | from MemberMetadata |
bool | isPrivate(object|string $objectOrClassName) Returns whether this member is private. | from MemberMetadata |
bool | isCascaded() deprecated Returns whether objects stored in this member should be validated. | from MemberMetadata |
bool | isCollectionCascaded() deprecated Returns whether arrays or traversable objects stored in this member should be traversed and validated in each entry. | from MemberMetadata |
bool | isCollectionCascadedDeeply() deprecated Returns whether arrays or traversable objects stored in this member should be traversed recursively for inner arrays/traversable objects. | from MemberMetadata |
ReflectionMethod|ReflectionProperty | getReflectionMember(object|string $objectOrClassName) Returns the reflection instance for accessing the member's value. | from MemberMetadata |
mixed | getPropertyValue($object) Extracts the value of the property from the given container. |
Details
string[] __sleep()
Returns the names of the properties that should be serialized.
Return Value
string[] |
__clone()
Clones this object.
$this addConstraint(Constraint $constraint)
Adds a constraint.
If the constraint {@link Valid} is added, the cascading strategy will be changed to {@link CascadingStrategy::CASCADE}. Depending on the properties $traverse and $deep of that constraint, the traversal strategy will be set to one of the following:
- {@link TraversalStrategy::IMPLICIT} if $traverse is enabled and $deep is enabled
- {@link TraversalStrategy::IMPLICIT} | {@link TraversalStrategy::STOP_RECURSION} if $traverse is enabled, but $deep is disabled
- {@link TraversalStrategy::NONE} if $traverse is disabled
Parameters
Constraint | $constraint | The constraint to add |
Return Value
$this |
Exceptions
ConstraintDefinitionException | When trying to add the {@link Traverse} constraint |
$this addConstraints(array $constraints)
Adds an list of constraints.
Parameters
array | $constraints | The constraints to add |
Return Value
$this |
Constraint[] getConstraints()
Returns all constraints of this element.
Return Value
Constraint[] | A list of Constraint instances |
bool hasConstraints()
Returns whether this element has any constraints.
Return Value
bool |
Constraint[] findConstraints(string $group)
Returns all constraints for a given validation group.
Parameters
string | $group | The validation group |
Return Value
Constraint[] | A list of constraint instances |
int getCascadingStrategy()
Returns the strategy for cascading objects.
Return Value
int | The cascading strategy |
int getTraversalStrategy()
Returns the strategy for traversing traversable objects.
Return Value
int | The traversal strategy |
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) deprecated
deprecated
Exists for compatibility with the deprecated {@link Symfony\Component\Validator\MetadataInterface}.
Should not be used.
Implemented for backward compatibility with Symfony < 2.5.
Parameters
ValidationVisitorInterface | $visitor | The visitor implementing the validation logic |
mixed | $value | The value to validate |
string|string[] | $group | The validation group to validate in |
string | $propertyPath | The current property path in the validation graph |
$propagatedGroup |
Exceptions
BadMethodCallException |
__construct(string $class, string $property, string|null $method = null)
Parameters
string | $class | The name of the class this member is defined on |
string | $property | The property the member belongs to |
string|null | $method | The method that is called to retrieve the value being validated (null for auto-detection) |
Exceptions
ValidatorException |
string getName()
Returns the name of the member.
Return Value
string |
string getClassName()
Returns the name of the backing PHP class.
Return Value
string | The name of the backing class |
string getPropertyName()
Returns the name of the property.
Return Value
string | The property name |
bool isPublic(object|string $objectOrClassName)
Returns whether this member is public.
Parameters
object|string | $objectOrClassName | The object or the class name |
Return Value
bool |
bool isProtected(object|string $objectOrClassName)
Returns whether this member is protected.
Parameters
object|string | $objectOrClassName | The object or the class name |
Return Value
bool |
bool isPrivate(object|string $objectOrClassName)
Returns whether this member is private.
Parameters
object|string | $objectOrClassName | The object or the class name |
Return Value
bool |
bool isCascaded() deprecated
deprecated
Returns whether objects stored in this member should be validated.
Return Value
bool |
bool isCollectionCascaded() deprecated
deprecated
Returns whether arrays or traversable objects stored in this member should be traversed and validated in each entry.
Return Value
bool |
bool isCollectionCascadedDeeply() deprecated
deprecated
Returns whether arrays or traversable objects stored in this member should be traversed recursively for inner arrays/traversable objects.
Return Value
bool |
ReflectionMethod|ReflectionProperty getReflectionMember(object|string $objectOrClassName)
Returns the reflection instance for accessing the member's value.
Parameters
object|string | $objectOrClassName | The object or the class name |
Return Value
ReflectionMethod|ReflectionProperty | The reflection instance |
mixed getPropertyValue($object)
Extracts the value of the property from the given container.
Parameters
$object |
Return Value
mixed | The value of the property |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/Validator/Mapping/GetterMetadata.html