Classes List

Symfony\Component\Validator\ConstraintViolationInterface

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
 26 
 27 
 28 
 29 
 30 
 31 
 32 
 33 
 34 
 35 
 36 
 37 
 38 
 39 
 40 
 41 
 42 
 43 
 44 
 45 
 46 
 47 
 48 
 49 
 50 
 51 
 52 
 53 
 54 
 55 
 56 
 57 
 58 
 59 
 60 
 61 
 62 
 63 
 64 
 65 
 66 
 67 
 68 
 69 
 70 
 71 
 72 
 73 
 74 
 75 
 76 
 77 
 78 
 79 
 80 
 81 
 82 
 83 
 84 
 85 
 86 
 87 
 88 
 89 
 90 
 91 
 92 
 93 
 94 
 95 
 96 
 97 
 98 
 99 
 100 
 101 
 102 
 103 
 104 
 105 
 106 
 107 
 108 
 109 
 110 
 111 
 112 
 113 
 114 
 115 
 116 
 117 
 118 
 119 
 120 
 121 
 122 
 123 
<?php

/* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */


namespace Symfony\Component\Validator;

/** * A violation of a constraint that happened during validation. * * For each constraint that fails during validation one or more violations are * created. The violations store the violation message, the path to the failing * element in the validation graph and the root element that was originally * passed to the validator. For example, take the following graph: * * <pre> * (Person)---(firstName: string) * \ * (address: Address)---(street: string) * </pre> * * If the <tt>Person</tt> object is validated and validation fails for the * "firstName" property, the generated violation has the <tt>Person</tt> * instance as root and the property path "firstName". If validation fails * for the "street" property of the related <tt>Address</tt> instance, the root * element is still the person, but the property path is "address.street". * * @author Bernhard Schussek <bschussek@gmail.com> */
interface ConstraintViolationInterface
{
    /** * Returns the violation message. * * @return string The violation message */
    public function getMessage();

    /** * Returns the raw violation message. * * The raw violation message contains placeholders for the parameters * returned by {@link getParameters}. Typically you'll pass the * message template and parameters to a translation engine. * * @return string The raw violation message */
    public function getMessageTemplate();

    /** * Returns the parameters to be inserted into the raw violation message. * * @return array a possibly empty list of parameters indexed by the names * that appear in the message template * * @see getMessageTemplate() */
    public function getParameters();

    /** * Returns a number for pluralizing the violation message. * * For example, the message template could have different translation based * on a parameter "choices": * * <ul> * <li>Please select exactly one entry. (choices=1)</li> * <li>Please select two entries. (choices=2)</li> * </ul> * * This method returns the value of the parameter for choosing the right * pluralization form (in this case "choices"). * * @return int|null The number to use to pluralize of the message */
    public function getPlural();

    /** * Returns the root element of the validation. * * @return mixed The value that was passed originally to the validator when * the validation was started. Because the validator traverses * the object graph, the value at which the violation occurs * is not necessarily the value that was originally validated. */
    public function getRoot();

    /** * Returns the property path from the root element to the violation. * * @return string The property path indicates how the validator reached * the invalid value from the root element. If the root * element is a <tt>Person</tt> instance with a property * "address" that contains an <tt>Address</tt> instance * with an invalid property "street", the generated property * path is "address.street". Property access is denoted by * dots, while array access is denoted by square brackets, * for example "addresses[1].street". */
    public function getPropertyPath();

    /** * Returns the value that caused the violation. * * @return mixed the invalid value that caused the validated constraint to * fail */
    public function getInvalidValue();

    /** * Returns a machine-digestible error code for the violation. * * @return string|null The error code */
    public function getCode();
}