<?php
namespace App\Model;
use App\Entity\AbstractBaseEntity;
use Symfony\Component\Validator\ConstraintViolationListInterface;
use Symfony\Component\Validator\Validator\ValidatorInterface;
/**
* AbstractReportValidator abstract class
*/
abstract class AbstractReportValidator
{
/**
* @var ValidatorInterface
*/
private ValidatorInterface $validator;
/**
* constructor
*
* @param ValidatorInterface $validator
*/
public function __construct(ValidatorInterface $validator)
{
$this->validator = $validator;
}
/**
* validate before persisting
*
* @param AbstractBaseEntity $baseEntity
* @return ConstraintViolationListInterface
*/
public function validate(AbstractBaseEntity $baseEntity): ConstraintViolationListInterface
{
return $this->validator->validate($baseEntity);
}
}