Exemple #1
0
 protected function walkClassForGroup(ClassMetadata $metadata, $object, $group, $propertyPath, $propagatedGroup = null)
 {
     foreach ($metadata->findConstraints($group) as $constraint) {
         $this->walkConstraint($constraint, $object, $group, $propertyPath);
     }
     if ($object !== null) {
         foreach ($metadata->getConstrainedProperties() as $property) {
             $localPropertyPath = empty($propertyPath) ? $property : $propertyPath . '.' . $property;
             $this->walkProperty($metadata, $property, $object, $group, $localPropertyPath, $propagatedGroup);
         }
     }
 }
Exemple #2
0
 public function walkClass(ClassMetadata $metadata, $object, $group, $propertyPath)
 {
     $this->context->setCurrentClass($metadata->getClassName());
     foreach ($metadata->findConstraints($group) as $constraint) {
         $this->walkConstraint($constraint, $object, $group, $propertyPath);
     }
     if ($object !== null) {
         foreach ($metadata->getConstrainedProperties() as $property) {
             $localPropertyPath = empty($propertyPath) ? $property : $propertyPath . '.' . $property;
             $this->walkProperty($metadata, $property, $object, $group, $localPropertyPath);
         }
     }
 }
Exemple #3
0
 protected function walkObjectForGroup(ClassMetadata $metadata, $object, $group, $propertyPath, $propagatedGroup = null)
 {
     $hash = spl_object_hash($object);
     // Exit, if the object is already validated for the current group
     if (isset($this->validatedObjects[$hash])) {
         if (isset($this->validatedObjects[$hash][$group])) {
             return;
         }
     } else {
         $this->validatedObjects[$hash] = array();
     }
     // Remember validating this object before starting and possibly
     // traversing the object graph
     $this->validatedObjects[$hash][$group] = true;
     foreach ($metadata->findConstraints($group) as $constraint) {
         $this->walkConstraint($constraint, $object, $group, $propertyPath);
     }
     if (null !== $object) {
         foreach ($metadata->getConstrainedProperties() as $property) {
             $localPropertyPath = empty($propertyPath) ? $property : $propertyPath . '.' . $property;
             $this->walkProperty($metadata, $property, $object, $group, $localPropertyPath, $propagatedGroup);
         }
     }
 }
 /**
  * {@inheritDoc}
  */
 public function findConstraints($group)
 {
     return $this->validatorClassMetadata->findConstraints($group);
 }