MetadataInterface устаревшее
интерфейс MetadataInterface
устаревшее
Контейнер для метаданных валидации.
Контейнер содержит ограничения, которые могут принадлежать к различным группам валидации. Ограничения для конкретной группы можно получить, вызвав {@link findConstraints}.
Реализуйте этот интерфейс, чтобы добавить метаданные валидации в свой собственный слой метаданных. Каждая метаданная может иметь именованные свойства. Каждое свойство может быть представлено одним или несколькими экземплярами {@link PropertyMetadataInterface}, которые возвращаются {@link getPropertyMetadata}. Поскольку PropertyMetadataInterface наследуется от MetadataInterface, каждое свойство может быть разделено на дальнейшие свойства.
Метод {@link accept} каждой метаданной реализует шаблон проектирования Посетитель. Метод должен передать вызов методу посетителя {@link ValidationVisitorInterface::visit} и дополнительно вызвать accept() для всех структурно связанных экземпляров метаданных.
Например, чтобы хранить ограничения для классов PHP и их свойств, создайте класс ClassMetadata (реализующий MetadataInterface) и класс PropertyMetadata (реализующий PropertyMetadataInterface). ClassMetadata::getPropertyMetadata($property) возвращает все экземпляры PropertyMetadata для свойства этого класса. Его метод accept() просто передает вызов ValidationVisitorInterface::visit() и вызывает accept() для всех содержащихся экземпляров PropertyMetadata, которые сами вызывают ValidationVisitorInterface::visit() снова.
Методы
| accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath) устаревшее Реализация паттерна проектирования Посетитель. | ||
| Constraint[] | findConstraints(string $group) Возвращает все ограничения для заданной группы валидации. |
Подробности
accept(ValidationVisitorInterface $visitor, mixed $value, string|string[] $group, string $propertyPath) устаревшее
устаревшее
Реализация паттерна проектирования Посетитель.
Вызывает {@link ValidationVisitorInterface::visit} и затем передает вызов accept() всем экземплярам метаданных свойств.
Параметры
| ValidationVisitorInterface | $visitor | Посетитель, реализующий логику валидации |
| mixed | $value | Значение для валидации |
| string|string[] | $group | Группа валидации для валидации |
| string | $propertyPath | Текущий путь к свойству в графе валидации |
Constraint[] findConstraints(string $group)
Возвращает все ограничения для заданной группы валидации.
Параметры
| string | $group | Группа валидации |
Возвращаемое значение
| Constraint[] | Список экземпляров ограничений |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Validator/MetadataInterface.html