<?php

declare(strict_types=1);

namespace App\Administration\Domain\Exception;

use App\Administration\Domain\Model\SchoolClass\ClassId;
use DomainException;

use function sprintf;

final class ClasseNonSupprimableException extends DomainException
{
    public static function carElevesAffectes(ClassId $classId, int $nombreEleves): self
    {
        return new self(sprintf(
            'La classe "%s" ne peut pas être supprimée car %d élève(s) y sont encore affectés. Veuillez d\'abord réaffecter les élèves.',
            $classId,
            $nombreEleves,
        ));
    }
}
