/** * @param mixed $value * @param Constraint $constraint */ public function validate($value, Constraint $constraint) { /** @var Restaurant $restaurant */ $restaurant = $value; $name = $restaurant->getName(); $lat = $restaurant->getLat(); $lng = $restaurant->getLng(); $id = $restaurant->getId(); if ($this->restaurantRepository->existsWithSimilarCoordinatesAndName($name, $lat, $lng, $id)) { $this->context->buildViolation($constraint->message)->atPath('name')->setParameter('%string%', $name)->addViolation(); } }