Spec-Zone.ru › Symfony 3.0

LegacyExecutionContext deprecated

class LegacyExecutionContext extends ExecutionContext

deprecated

since version 2.5, to be removed in 3.0.

An execution context that is compatible with the legacy API (< 2.5).

Methods

__construct(ValidatorInterface $validator, mixed $root, MetadataFactoryInterface $metadataFactory, TranslatorInterface $translator, string|null $translationDomain = null)

Создаёт новый контекст.

setNode(mixed $value, object|null $object, MetadataInterface $metadata = null, string $propertyPath)

Устанавливает текущее проверяемое значение.

from ExecutionContext
setGroup(string|null $group)

Устанавливает текущую проверяемую группу.

from ExecutionContext
setConstraint(Constraint $constraint)

Устанавливает текущее проверяемое ограничение.

from ExecutionContext
addViolation(string $message, array $parameters = array(), mixed $invalidValue = null, int|null $plural = null, int|null $code = null)

Добавляет нарушение в текущем узле графа проверки.

from ExecutionContext
ConstraintViolationBuilderInterface buildViolation(string $message, array $parameters = array())

Возвращает конструктор для добавления нарушения с расширенной информацией.

from ExecutionContext
ConstraintViolationListInterface getViolations()

Возвращает нарушения, сгенерированные валидатором до сих пор.

from ExecutionContext
ValidatorInterface getValidator()

Возвращает валидатор.

from ExecutionContext
mixed getRoot()

Возвращает значение, с которого началась валидация в графе объекта.

from ExecutionContext
mixed getValue()

Возвращает значение, которое валидатор в данный момент проверяет.

from ExecutionContext
object|null getObject()

Возвращает текущий проверяемый объект.

from ExecutionContext
MetadataInterface|null getMetadata()

Возвращает метаданные для текущего проверяемого значения.

from ExecutionContext
string getGroup()

Возвращает группу валидации, которая в данный момент проверяется.

from ExecutionContext
string|null getClassName()

Возвращает имя класса текущего узла.

from ExecutionContext
string|null getPropertyName()

Возвращает имя свойства текущего узла.

from ExecutionContext
string getPropertyPath(string $subPath = '')

Возвращает путь к свойству значения, которое валидатор в данный момент проверяет.

from ExecutionContext
addViolationAt(string $subPath, string $message, array $parameters = array(), mixed $invalidValue = null, int|null $plural = null, int|null $code = null)

Добавляет нарушение в узел графа валидации с заданным путём свойства относительно текущего пути свойства.

from ExecutionContext
validate(mixed $value, string $subPath = '', null|string|string[] $groups = null, bool $traverse = false, bool $deep = false)

Проверяет заданное значение в рамках текущей проверки.

from ExecutionContext
validateValue(mixed $value, Constraint|Constraint[] $constraints, string $subPath = '', null|string|string[] $groups = null)

Проверяет значение по ограничению.

from ExecutionContext
MetadataFactoryInterface getMetadataFactory()

Возвращает используемый фабрику метаданных.

from ExecutionContext
markGroupAsValidated(string $cacheKey, string $groupHash)

Помечает объект как проверенный в определённой группе валидации.

from ExecutionContext
bool isGroupValidated(string $cacheKey, string $groupHash)

Возвращает, был ли объект проверен в определённой группе валидации.

from ExecutionContext
markConstraintAsValidated(string $cacheKey, string $constraintHash)

Помечает ограничение как проверенное для объекта.

from ExecutionContext
bool isConstraintValidated(string $cacheKey, string $constraintHash)

Возвращает, было ли ограничение проверено для объекта.

from ExecutionContext
markObjectAsInitialized(string $cacheKey)

Помечает, что объект был инициализирован.

from ExecutionContext
bool isObjectInitialized(string $cacheKey)

Возвращает, был ли объект инициализирован.

from ExecutionContext

Details

__construct(ValidatorInterface $validator, mixed $root, MetadataFactoryInterface $metadataFactory, TranslatorInterface $translator, string|null $translationDomain = null)

Создаёт новый контекст.

Параметры

ValidatorInterface $validator Валидатор
mixed $root Корневое значение проверяемой графы объектов
MetadataFactoryInterface $metadataFactory
TranslatorInterface $translator Переводчик
string|null $translationDomain Домен перевода для перевода сообщений об ошибках

См. также

ExecutionContext::__construct()

setNode(mixed $value, object|null $object, MetadataInterface $metadata = null, string $propertyPath)

Устанавливает текущее проверяемое значение.

Параметры

mixed $value Проверяемое значение
object|null $object Текущий проверяемый объект
MetadataInterface $metadata Метаданные валидации
string $propertyPath Путь к свойству текущего значения

setGroup(string|null $group)

Устанавливает текущую группу валидации.

Параметры

string|null $group Проверяемая группа

setConstraint(Constraint $constraint)

Устанавливает текущее проверяемое ограничение.

Параметры

Constraint $constraint Проверяемое ограничение

addViolation(string $message, array $parameters = array(), mixed $invalidValue = null, int|null $plural = null, int|null $code = null)

Добавляет нарушение в текущем узле графа валидации.

Примечание: параметры $invalidValue, $plural и $code устарели начиная с версии 2.5 и будут удалены в 3.0.

Параметры

string $message Сообщение об ошибке
array $parameters
mixed $invalidValue Неверное, проверенное значение
int|null $plural Число для множественного числа сообщения
int|null $code Код нарушения

ConstraintViolationBuilderInterface buildViolation(string $message, array $parameters = array())

Возвращает конструктор для добавления нарушения с расширенной информацией.

Вызовите {@link ConstraintViolationBuilderInterface::addViolation()}, чтобы добавить нарушение, когда закончите настройку:

$context->buildViolation('Please enter a number between %min% and %max%.')
    ->setParameter('%min%', 3)
    ->setParameter('%max%', 10)
    ->setTranslationDomain('number_validation')
    ->addViolation();

Параметры

string $message Сообщение об ошибке
array $parameters Параметры, подставляемые в сообщение об ошибке

Возвращаемое значение

ConstraintViolationBuilderInterface Конструктор нарушения

ConstraintViolationListInterface getViolations()

Возвращает нарушения, сгенерированные валидатором до сих пор.

Возвращаемое значение

ConstraintViolationListInterface Список нарушений ограничений.

ValidatorInterface getValidator()

Возвращает валидатор.

Полезно, если вы хотите добавить дополнительные ограничения:

public function validate($value, Constraint $constraint)
{
    $validator = $this->context->getValidator();

    $violations = $validator->validateValue($value, new Length(array('min' => 3)));

    if (count($violations) > 0) {
        // ...
    }
}

Возвращаемое значение

ValidatorInterface

mixed getRoot()

Возвращает значение, с которого началась валидация в графе объектов.

Валидатор, при получении объекта, перебирает свойства и связанные объекты, а также их свойства. Корнем валидации является объект, с которого начался перебор.

Текущее значение возвращается методом {@link getValue}.

Возвращаемое значение

mixed Корневое значение валидации.

mixed getValue()

Возвращает значение, которое валидатор в данный момент проверяет.

Если вы хотите получить объект, который изначально был передан валидатору, используйте {@link getRoot}.

Возвращаемое значение

mixed Текущее проверяемое значение.

object|null getObject()

Возвращает текущий проверяемый объект.

Если валидатор в данный момент проверяет ограничение класса, возвращается объект этого класса. Если он проверяет свойство или метод-геттер, возвращается объект, к которому принадлежит свойство/геттер.

В остальных случаях возвращается null.

Возвращаемое значение

object|null Текущий проверяемый объект или null.

MetadataInterface|null getMetadata()

Возвращает метаданные для текущего проверяемого значения.

В реализации ядра этот метод возвращает экземпляр {@link Mapping\ClassMetadata}, если текущее значение является объектом, экземпляр {@link Mapping\PropertyMetadata}, если текущее значение является значением свойства, и экземпляр {@link Mapping\GetterMetadata}, если проверяемое значение является результатом метода-геттера.

Если проверяемое значение не является ни одним из этих типов, например, если валидатор был вызван со значением и ограничением, этот метод возвращает null.

Возвращаемое значение

MetadataInterface|null Метаданные текущего проверяемого значения.

string getGroup()

Возвращает группу валидации, которая в данный момент проверяется.

Возвращаемое значение

string Текущая группа валидации.

string|null getClassName()

Возвращает имя класса текущего узла.

Если метаданные текущего узла не реализуют {@link ClassBasedInterface} или если для текущего узла нет доступных метаданных, этот метод возвращает null.

Возвращаемое значение

string|null Имя класса или null, если имя класса не удалось найти.

string|null getPropertyName()

Возвращает имя свойства текущего узла.

Если метаданные текущего узла не реализуют {@link PropertyMetadataInterface} или если для текущего узла нет доступных метаданных, этот метод возвращает null.

Возвращаемое значение

string|null Имя свойства или null, если имя свойства не удалось найти.

string getPropertyPath(string $subPath = '')

Возвращает путь к свойству значения, которое валидатор в данный момент проверяет.

Например, рассмотрим следующую графу объектов:

(Person)---($address: Address)---($street: string)

Когда экземпляр Person передается валидатору, путь к свойству изначально пустой. Когда свойство $address этой персоны проверяется, путь к свойству становится "address". Когда свойство $street связанного экземпляра Address проверяется, путь к свойству становится "address.street".

Свойства объектов в пути к свойству предваряются точкой. Индексы массивов или объектов, реализующих интерфейс {@link \ArrayAccess}, заключены в квадратные скобки. Например, если свойство в предыдущем примере равно $addresses и содержит массив экземпляров Address, путь к свойству, сгенерированный для свойства $street одного из этих адресов, например, будет "addresses[0].street".

Параметры

string $subPath Необязательно. Суффикс, добавляемый к текущему пути к свойству.

Возвращаемое значение

string Текущий путь к свойству. Результат может быть пустой строкой, если валидатор в данный момент проверяет корневое значение графы валидации.

addViolationAt(string $subPath, string $message, array $parameters = array(), mixed $invalidValue = null, int|null $plural = null, int|null $code = null)

Добавляет нарушение в узел графа валидации с заданным путем к свойству, относительным к текущему пути к свойству.

Параметры

строка $subPath Относительный путь к свойству для нарушения
строка $message Сообщение об ошибке
массив $parameters Параметры, подставляемые в сообщении об ошибке
смешанный тип $invalidValue Неверное, проверенное значение
целое число|null $plural Число для множественного числа сообщения
целое число|null $code Код нарушения

validate(смешанный тип $value, строка $subPath = '', null|строка|массив строк $groups = null, булево $traverse = false, булево $deep = false)

Проверяет заданное значение в рамках текущей проверки.

Значение может быть любым значением, распознаваемым используемой фабрикой метаданных (см. {@link MetadataFactoryInterface::getMetadata}), или массивом или итерируемым объектом таких значений.

Обычно вы проверяете значение, которое не является текущим узлом контекста выполнения. В этом случае вы можете передать аргумент {@link $subPath}, который добавляется к текущему пути свойства при создании нарушения. Например, рассмотрим следующую объектную диаграмму:

(Person)---($address: Address)---($phoneNumber: PhoneNumber)
                    ^

Когда контекст выполнения останавливается на экземпляре Person, путь к свойству составляет "address". Когда вы сейчас проверяете экземпляр PhoneNumber, передайте "phoneNumber" в качестве подпути, чтобы правильно изменить путь к свойству на "address.phoneNumber":

$context->validate($address->phoneNumber, 'phoneNumber');

Любые нарушения, сгенерированные во время проверки, будут добавлены в список нарушений, к которому вы можете получить доступ с помощью {@link getViolations}.

Параметры

смешанный тип $value Значение для проверки.
строка $subPath Путь для добавления к пути свойства контекста.
null|строка|массив строк $groups Группы для проверки. Если вы не передадите группы, будет использоваться текущая группа контекста.
булево $traverse Нужно ли пройтись по значению, если это массив или экземпляр \Traversable.
булево $deep Нужно ли рекурсивно пройтись по значению, если это коллекция коллекций.

validateValue(смешанный тип $value, Constraint|Constraint[] $constraints, строка $subPath = '', null|строка|массив строк $groups = null)

Проверяет значение на соответствие ограничению.

Используйте параметр $subPath для адаптации пути к свойству для проверяемого значения. Например, рассмотрим следующую объектную диаграмму:

(Person)---($address: Address)---($street: string)
                    ^

Когда валидатор проверяет экземпляр Address, путь к свойству, сохранённый в контексте выполнения, равен "address". Когда вы вручную проверяете свойство $street, передайте подпуть "street", чтобы изменить полный путь к свойству на "address.street":

$context->validate($address->street, new NotNull(), 'street');

Параметры

смешанный тип $value Значение для проверки.
Constraint|Constraint[] $constraints Ограничение(ия) для проверки.
строка $subPath Путь для добавления к пути свойства контекста.
null|строка|массив строк $groups Группы для проверки. Если вы не передадите группы, будет использоваться текущая группа контекста.

MetadataFactoryInterface getMetadataFactory()

Возвращает используемую фабрику метаданных.

Значение возврата

MetadataFactoryInterface Фабрика метаданных.

markGroupAsValidated(строка $cacheKey, строка $groupHash)

Помечает объект как проверенный в определённой группе проверки.

Параметры

строка $cacheKey Хэш объекта
строка $groupHash Имя или хэш группы, если это последовательность групп

bool isGroupValidated(строка $cacheKey, строка $groupHash)

Возвращает, был ли объект проверен в определённой группе проверки.

Параметры

строка $cacheKey Хэш объекта
строка $groupHash Имя или хэш группы, если это последовательность групп

Значение возврата

булево Был ли объект уже проверен для этой группы

markConstraintAsValidated(строка $cacheKey, строка $constraintHash)

Помечает ограничение как проверенное для объекта.

Параметры

строка $cacheKey Хэш объекта
строка $constraintHash Хэш ограничения

bool isConstraintValidated(строка $cacheKey, строка $constraintHash)

Возвращает, было ли ограничение проверено для объекта.

Параметры

строка $cacheKey Хэш объекта
строка $constraintHash Хэш ограничения

Значение возврата

булево Было ли ограничение уже проверено

markObjectAsInitialized(строка $cacheKey)

Помечает, что объект был инициализирован.

Параметры

строка $cacheKey Хэш объекта

bool isObjectInitialized(строка $cacheKey)

Возвращает, был ли объект инициализирован.

Параметры

строка $cacheKey Хэш объекта

Значение возврата

булево Был ли объект уже инициализирован

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Validator/Context/LegacyExecutionContext.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API