class ClassMetadata extends ElementMetadata implements ClassMetadataInterface
Default implementation of {@link ClassMetadataInterface}.
This class supports serialization and cloning.
Constraint[] | $constraints | |
array | $constraintsByGroup | |
int | $cascadingStrategy | The strategy for cascading objects. |
int | $traversalStrategy | The strategy for traversing traversable objects. |
string | $name | |
string | $defaultGroup | |
MemberMetadata[] | $members | |
PropertyMetadata[] | $properties | |
GetterMetadata[] | $getters | |
array | $groupSequence | |
bool | $groupSequenceProvider |
string[] | __sleep() Returns the names of the properties that should be serialized. | |
__clone() Clones this object. | from GenericMetadata | |
GenericMetadata | addConstraint(Constraint $constraint) Adds a constraint. | |
GenericMetadata | 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() Class nodes are never cascaded. | |
int | getTraversalStrategy() Returns the strategy for traversing traversable objects. | from GenericMetadata |
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath, $propagatedGroup = null) Exists for compatibility with the deprecated {@link Symfony\Component\Validator\MetadataInterface}. | ||
__construct(string $class) Constructs a metadata for the given class. | ||
string | getClassName() Returns the name of the backing PHP class. | |
string | getDefaultGroup() Returns the name of the default group for this class. | |
ClassMetadata | addPropertyConstraint(string $property, Constraint $constraint) Adds a constraint to the given property. | |
ClassMetadata | addPropertyConstraints(string $property, array $constraints) | |
ClassMetadata | addGetterConstraint(string $property, Constraint $constraint) Adds a constraint to the getter of the given property. | |
ClassMetadata | addGetterConstraints(string $property, array $constraints) | |
mergeConstraints(ClassMetadata $source) Merges the constraints of the given metadata into this object. | ||
bool | hasMemberMetadatas(string $property) Returns true if metadatas of members is present for the given property. | |
MemberMetadata[] | getMemberMetadatas(string $property) Returns all metadatas of members describing the given property. | |
bool | hasPropertyMetadata(string $property) Check if there's any metadata attached to the given named property. | |
PropertyMetadataInterface[] | getPropertyMetadata(string $property) Returns all metadata instances for the given named property. | |
string[] | getConstrainedProperties() Returns the names of all constrained properties. | |
ClassMetadata | setGroupSequence(array $groupSequence) Sets the default group sequence for this class. | |
bool | hasGroupSequence() Returns whether the "Default" group is overridden by a group sequence. | |
GroupSequence|null | getGroupSequence() Returns the group sequence that overrides the "Default" group for this class. | |
ReflectionClass | getReflectionClass() Returns a ReflectionClass instance for this class. | |
setGroupSequenceProvider(bool $active) Sets whether a group sequence provider should be used. | ||
bool | isGroupSequenceProvider() Returns whether the "Default" group is overridden by a dynamic group sequence obtained by the validated objects. |
Returns the names of the properties that should be serialized.
Clones this object.
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:
Adds an list of constraints.
Returns all constraints of this element.
Returns whether this element has any constraints.
Returns all constraints for a given validation group.
Class nodes are never cascaded.
{@inheritdoc}
Returns the strategy for traversing traversable objects.
Exists for compatibility with the deprecated {@link Symfony\Component\Validator\MetadataInterface}.
Should not be used.
Implemented for backward compatibility with Symfony < 2.5.
Constructs a metadata for the given class.
Returns the name of the backing PHP class.
Returns the name of the default group for this class.
For each class, the group "Default" is an alias for the group "
If a class defines a group sequence, validating the class in "Default" will validate the group sequence. The constraints assigned to "Default" can still be validated by validating the class in "
Adds a constraint to the given property.
Adds a constraint to the getter of the given property.
The name of the getter is assumed to be the name of the property with an uppercased first letter and either the prefix "get" or "is".
Merges the constraints of the given metadata into this object.
Returns true if metadatas of members is present for the given property.
Returns all metadatas of members describing the given property.
Check if there's any metadata attached to the given named property.
Returns all metadata instances for the given named property.
If your implementation does not support properties, simply throw an exception in this method (for example a BadMethodCallException).
Returns the names of all constrained properties.
Sets the default group sequence for this class.
Returns whether the "Default" group is overridden by a group sequence.
If it is, you can access the group sequence with {@link getGroupSequence()}.
Returns the group sequence that overrides the "Default" group for this class.
Returns a ReflectionClass instance for this class.
Sets whether a group sequence provider should be used.
Returns whether the "Default" group is overridden by a dynamic group sequence obtained by the validated objects.
If this method returns true, the class must implement {@link \Symfony\Component\Validator\GroupSequenceProviderInterface}. This interface will be used to obtain the group sequence when an object of this class is validated.
© 2004–2016 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/Validator/Mapping/ClassMetadata.html