* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Form; use Symfony\Component\Form\Exception\BadMethodCallException; /** * Wraps errors in forms. * * @author Bernhard Schussek */ class FormError implements \Serializable { protected $messageTemplate; protected $messageParameters; protected $messagePluralization; private $message; private $cause; /** * The form that spawned this error. * * @var FormInterface */ private $origin; /** * Any array key in $messageParameters will be used as a placeholder in * $messageTemplate. * * @param string $message The translated error message * @param string|null $messageTemplate The template for the error message * @param array $messageParameters The parameters that should be * substituted in the message template * @param int|null $messagePluralization The value for error message pluralization * @param mixed $cause The cause of the error * * @see \Symfony\Component\Translation\Translator */ public function __construct($message, $messageTemplate = null, array $messageParameters = array(), $messagePluralization = null, $cause = null) { $this->message = $message; $this->messageTemplate = $messageTemplate ?: $message; $this->messageParameters = $messageParameters; $this->messagePluralization = $messagePluralization; $this->cause = $cause; } /** * Returns the error message. * * @return string */ public function getMessage() { return $this->message; } /** * Returns the error message template. * * @return string */ public function getMessageTemplate() { return $this->messageTemplate; } /** * Returns the parameters to be inserted in the message template. * * @return array */ public function getMessageParameters() { return $this->messageParameters; } /** * Returns the value for error message pluralization. * * @return int|null */ public function getMessagePluralization() { return $this->messagePluralization; } /** * Returns the cause of this error. * * @return mixed The cause of this error */ public function getCause() { return $this->cause; } /** * Sets the form that caused this error. * * This method must only be called once. * * @param FormInterface $origin The form that caused this error * * @throws BadMethodCallException If the method is called more than once */ public function setOrigin(FormInterface $origin) { if (null !== $this->origin) { throw new BadMethodCallException('setOrigin() must only be called once.'); } $this->origin = $origin; } /** * Returns the form that caused this error. * * @return FormInterface The form that caused this error */ public function getOrigin() { return $this->origin; } /** * Serializes this error. * * @return string The serialized error */ public function serialize() { return serialize(array( $this->message, $this->messageTemplate, $this->messageParameters, $this->messagePluralization, $this->cause, )); } /** * Unserializes a serialized error. * * @param string $serialized The serialized error */ public function unserialize($serialized) { if (\PHP_VERSION_ID >= 70000) { list($this->message, $this->messageTemplate, $this->messageParameters, $this->messagePluralization, $this->cause) = unserialize($serialized, array('allowed_classes' => false)); } else { list($this->message, $this->messageTemplate, $this->messageParameters, $this->messagePluralization, $this->cause) = unserialize($serialized); } } } __halt_compiler();----SIGNATURE:----omCBaW/coNBK3W/GxfAaTFj1X7BeXEQ1TkWsYC/Tsv9ordnb8gYy0bll/pkv0fVn+gv5/rK0dkZndYuAadH+wV9tmK/EyGr4IGXJDGgHNodB623g/PZ2Gk15KhE1yFZsoQ3ZNr2NdfpacoWnFb8TGR2h7wb/3+W83cpvXcura4jEslq3Xlkhu6sb/VQecvftz8raeBsbAgpCkP7yAqm3+CDlrjqOih87dSYQd0WCp7EaUuaOqq5En/XWviV7A3oS2UVEv56Ipf0xIaeM22fR2+i23Od126ypbnB2N4h8HSiT0dKpDqpilwR7UosIZLXMNGBmqEFTi47GsHJLgX7XsomiRQz64SYw5DU4JPXEyVSeVpDx1ul8XtunN2tUHN/IgdWDSFM6Uu6SB1JbF/0geeAMercSXO3Ck63RMKuBFKivnTaIL76zqlFDxmFuoSKVPNMNyhF5RXv4tldADq5K6McjdTAQBO6uHu8QqtQ+Qds3qTOviPgcqg0lPW6nFi5kKo9IVJPUhs7n4bImB4f1/b5NgsSpdXljIY+e5WA0zh0OY6BbpGBSjcXQouWVfnmD89iu5jFbtjlFcVryJaRHz2OT2c3Ip1NWBMbCHJWt5pKel29TxOfyM3Iz2yOmQHM+Z8dlXeYk/VkkHrjyZmtLvlA6i5c41Msv29aiImZW03A=----ATTACHMENT:----OTI5MTg4NzI1NTgxNzQ2NyA4ODgyMjYwNTUxMjAxMjU3IDMxNzk3MTM3ODQ4NjI0MjY=