/** * Merges the constraints of the given metadata into this object. * * @param ClassMetadata $source The source metadata */ public function mergeConstraints(ClassMetadata $source) { foreach ($source->getConstraints() as $constraint) { $this->addConstraint(clone $constraint); } foreach ($source->getConstrainedProperties() as $property) { foreach ($source->getMemberMetadatas($property) as $member) { $member = clone $member; foreach ($member->getConstraints() as $constraint) { $constraint->addImplicitGroupName($this->getDefaultGroup()); } $this->addMemberMetadata($member); if (!$member->isPrivate($this->name)) { $property = $member->getPropertyName(); if ($member instanceof PropertyMetadata && !isset($this->properties[$property])) { $this->properties[$property] = $member; } elseif ($member instanceof GetterMetadata && !isset($this->getters[$property])) { $this->getters[$property] = $member; } } } } }
public function walkPropertyValue(ClassMetadata $metadata, $property, $value, $group, $propertyPath) { foreach ($metadata->getMemberMetadatas($property) as $member) { $this->walkMember($member, $value, $group, $propertyPath); } }
/** * Validates a property of a class against a potential value. * * @param Mapping\ClassMetadata $metadata * @param $property * @param $value * @param $group * @param $propertyPath * * @deprecated Deprecated since version 2.2, to be removed in 2.3. */ public function walkPropertyValue(ClassMetadata $metadata, $property, $value, $group, $propertyPath) { trigger_error('walkPropertyValue() is deprecated since version 2.2 and will be removed in 2.3.', E_USER_DEPRECATED); foreach ($metadata->getMemberMetadatas($property) as $member) { $member->accept($this->visitor, $value, $group, $propertyPath); } }
/** * {@inheritDoc} */ public function getMemberMetadatas($property) { return $this->validatorClassMetadata->getMemberMetadatas($property); }