Current Path: > > opt > cloudlinux > alt-php55 > root > usr > share > > pear > Symfony > > Component > > Validator
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
Constraints | Directory | - | - | |
Exception | Directory | - | - | |
Mapping | Directory | - | - | |
Resources | Directory | - | - | |
ClassBasedInterface.php | File | 572 bytes | December 18 2019 11:24:08. | |
Constraint.php | File | 6797 bytes | December 18 2019 11:24:08. | |
ConstraintValidator.php | File | 700 bytes | December 18 2019 11:24:08. | |
ConstraintValidatorFactory.php | File | 2297 bytes | December 18 2019 11:24:08. | |
ConstraintValidatorFactoryInterface.php | File | 775 bytes | December 18 2019 11:24:08. | |
ConstraintValidatorInterface.php | File | 899 bytes | December 18 2019 11:24:08. | |
ConstraintViolation.php | File | 4334 bytes | December 18 2019 11:24:08. | |
ConstraintViolationInterface.php | File | 4353 bytes | December 18 2019 11:24:08. | |
ConstraintViolationList.php | File | 3245 bytes | December 18 2019 11:24:08. | |
ConstraintViolationListInterface.php | File | 2008 bytes | December 18 2019 11:24:08. | |
DefaultTranslator.php | File | 5245 bytes | December 18 2019 11:24:08. | |
ExecutionContext.php | File | 8495 bytes | December 18 2019 11:24:08. | |
ExecutionContextInterface.php | File | 12355 bytes | December 18 2019 11:24:08. | |
GlobalExecutionContextInterface.php | File | 1937 bytes | December 18 2019 11:24:08. | |
GroupSequenceProviderInterface.php | File | 597 bytes | December 18 2019 11:24:08. | |
MetadataFactoryInterface.php | File | 990 bytes | December 18 2019 11:24:08. | |
MetadataInterface.php | File | 2891 bytes | December 18 2019 11:24:08. | |
ObjectInitializerInterface.php | File | 817 bytes | December 18 2019 11:24:08. | |
PropertyMetadataContainerInterface.php | File | 1209 bytes | December 18 2019 11:24:08. | |
PropertyMetadataInterface.php | File | 1258 bytes | December 18 2019 11:24:08. | |
Validation.php | File | 1098 bytes | December 18 2019 11:24:08. | |
ValidationVisitor.php | File | 6322 bytes | December 18 2019 11:24:08. | |
ValidationVisitorInterface.php | File | 3548 bytes | December 18 2019 11:24:08. | |
Validator.php | File | 6681 bytes | December 18 2019 11:24:08. | |
ValidatorBuilder.php | File | 10082 bytes | December 18 2019 11:24:08. | |
ValidatorBuilderInterface.php | File | 5499 bytes | December 18 2019 11:24:08. | |
ValidatorInterface.php | File | 3580 bytes | December 18 2019 11:24:08. | |
autoloader.php | File | 339 bytes | December 18 2019 11:24:08. |
<?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; use Symfony\Component\Validator\Exception\NoSuchMetadataException; use Symfony\Component\Validator\Exception\UnexpectedTypeException; use Symfony\Component\Translation\TranslatorInterface; /** * Default implementation of {@link ValidationVisitorInterface} and * {@link GlobalExecutionContextInterface}. * * @author Bernhard Schussek <bschussek@gmail.com> */ class ValidationVisitor implements ValidationVisitorInterface, GlobalExecutionContextInterface { /** * @var mixed */ private $root; /** * @var MetadataFactoryInterface */ private $metadataFactory; /** * @var ConstraintValidatorFactoryInterface */ private $validatorFactory; /** * @var TranslatorInterface */ private $translator; /** * @var null|string */ private $translationDomain; /** * @var array */ private $objectInitializers; /** * @var ConstraintViolationList */ private $violations; /** * @var array */ private $validatedObjects = array(); /** * Creates a new validation visitor. * * @param mixed $root The value passed to the validator. * @param MetadataFactoryInterface $metadataFactory The factory for obtaining metadata instances. * @param ConstraintValidatorFactoryInterface $validatorFactory The factory for creating constraint validators. * @param TranslatorInterface $translator The translator for translating violation messages. * @param string|null $translationDomain The domain of the translation messages. * @param ObjectInitializerInterface[] $objectInitializers The initializers for preparing objects before validation. * * @throws UnexpectedTypeException If any of the object initializers is not an instance of ObjectInitializerInterface */ public function __construct($root, MetadataFactoryInterface $metadataFactory, ConstraintValidatorFactoryInterface $validatorFactory, TranslatorInterface $translator, $translationDomain = null, array $objectInitializers = array()) { foreach ($objectInitializers as $initializer) { if (!$initializer instanceof ObjectInitializerInterface) { throw new UnexpectedTypeException($initializer, 'Symfony\Component\Validator\ObjectInitializerInterface'); } } $this->root = $root; $this->metadataFactory = $metadataFactory; $this->validatorFactory = $validatorFactory; $this->translator = $translator; $this->translationDomain = $translationDomain; $this->objectInitializers = $objectInitializers; $this->violations = new ConstraintViolationList(); } /** * {@inheritdoc} */ public function visit(MetadataInterface $metadata, $value, $group, $propertyPath) { $context = new ExecutionContext( $this, $this->translator, $this->translationDomain, $metadata, $value, $group, $propertyPath ); $context->validateValue($value, $metadata->findConstraints($group)); } /** * {@inheritdoc} */ public function validate($value, $group, $propertyPath, $traverse = false, $deep = false) { if (null === $value) { return; } if (is_object($value)) { $hash = spl_object_hash($value); // Exit, if the object is already validated for the current group if (isset($this->validatedObjects[$hash][$group])) { return; } // Remember validating this object before starting and possibly // traversing the object graph $this->validatedObjects[$hash][$group] = true; foreach ($this->objectInitializers as $initializer) { if (!$initializer instanceof ObjectInitializerInterface) { throw new \LogicException('Validator initializers must implement ObjectInitializerInterface.'); } $initializer->initialize($value); } } // Validate arrays recursively by default, otherwise every driver needs // to implement special handling for arrays. // https://github.com/symfony/symfony/issues/6246 if (is_array($value) || ($traverse && $value instanceof \Traversable)) { foreach ($value as $key => $element) { // Ignore any scalar values in the collection if (is_object($element) || is_array($element)) { // Only repeat the traversal if $deep is set $this->validate($element, $group, $propertyPath.'['.$key.']', $deep, $deep); } } try { $this->metadataFactory->getMetadataFor($value)->accept($this, $value, $group, $propertyPath); } catch (NoSuchMetadataException $e) { // Metadata doesn't necessarily have to exist for // traversable objects, because we know how to validate // them anyway. Optionally, additional metadata is supported. } } else { $this->metadataFactory->getMetadataFor($value)->accept($this, $value, $group, $propertyPath); } } /** * {@inheritdoc} */ public function getViolations() { return $this->violations; } /** * {@inheritdoc} */ public function getRoot() { return $this->root; } /** * {@inheritdoc} */ public function getVisitor() { return $this; } /** * {@inheritdoc} */ public function getValidatorFactory() { return $this->validatorFactory; } /** * {@inheritdoc} */ public function getMetadataFactory() { return $this->metadataFactory; } }
SILENT KILLER Tool