Files
myep-team/src/RequiredTeamerCheck/RequiredTeamerCheckRegistry.php
T
2026-09-09 11:15:35 +02:00

31 lines
631 B
PHP

<?php
namespace App\RequiredTeamerCheck;
use App\Entity\User;
class RequiredTeamerCheckRegistry
{
/**
* @param iterable<RequiredTeamerCheckInterface> $checks
*/
public function __construct(private readonly iterable $checks)
{
}
public function getFirstUnresolvedCheck(User $user): ?RequiredTeamerCheckInterface
{
foreach ($this->checks as $check) {
if (false === $check->appliesTo($user)) {
continue;
}
if (false === $check->isSatisfied($user)) {
return $check;
}
}
return null;
}
}