Exemplo n.º 1
0
 /**
  * {@inheritdoc}
  */
 public function addConstraint(Constraint $constraint)
 {
     if (!in_array(Constraint::PROPERTY_CONSTRAINT, (array) $constraint->getTargets())) {
         throw new ConstraintDefinitionException(sprintf('The constraint %s cannot be put on properties or getters', get_class($constraint)));
     }
     parent::addConstraint($constraint);
     return $this;
 }
Exemplo n.º 2
0
 /**
  * {@inheritdoc}
  */
 public function addConstraint(Constraint $constraint)
 {
     if (!in_array(Constraint::CLASS_CONSTRAINT, (array) $constraint->getTargets())) {
         throw new ConstraintDefinitionException(sprintf('The constraint "%s" cannot be put on classes.', get_class($constraint)));
     }
     if ($constraint instanceof Valid) {
         throw new ConstraintDefinitionException(sprintf('The constraint "%s" cannot be put on classes.', get_class($constraint)));
     }
     if ($constraint instanceof Traverse) {
         if ($constraint->traverse) {
             // If traverse is true, traversal should be explicitly enabled
             $this->traversalStrategy = TraversalStrategy::TRAVERSE;
         } else {
             // If traverse is false, traversal should be explicitly disabled
             $this->traversalStrategy = TraversalStrategy::NONE;
         }
         // The constraint is not added
         return $this;
     }
     $constraint->addImplicitGroupName($this->getDefaultGroup());
     parent::addConstraint($constraint);
     return $this;
 }