/** * {@inheritdoc} */ public function validate($value, Constraint $constraint) { $channels = $this->channelRepository->getLabelsIndexedByCode(); if (0 === count($channels)) { throw new ConstraintDefinitionException('No channel is set in the application'); } $constraint->choices = array_keys($channels); parent::validate($value, $constraint); }