Commit d1cd7c13 authored by Fabien Potencier's avatar Fabien Potencier

removed deprecations for the validator provider

parent 29013a9f
...@@ -14,10 +14,10 @@ namespace Silex\Provider; ...@@ -14,10 +14,10 @@ namespace Silex\Provider;
use Silex\Application; use Silex\Application;
use Silex\ServiceProviderInterface; use Silex\ServiceProviderInterface;
use Silex\ConstraintValidatorFactory; use Silex\ConstraintValidatorFactory;
use Symfony\Component\Validator\Validator;
use Symfony\Component\Validator\DefaultTranslator;
use Symfony\Component\Validator\Mapping\ClassMetadataFactory; use Symfony\Component\Validator\Mapping\ClassMetadataFactory;
use Symfony\Component\Validator\Mapping\Factory\LazyLoadingMetadataFactory;
use Symfony\Component\Validator\Mapping\Loader\StaticMethodLoader; use Symfony\Component\Validator\Mapping\Loader\StaticMethodLoader;
use Symfony\Component\Validator\Validation;
/** /**
* Symfony Validator component Provider. * Symfony Validator component Provider.
...@@ -37,16 +37,27 @@ class ValidatorServiceProvider implements ServiceProviderInterface ...@@ -37,16 +37,27 @@ class ValidatorServiceProvider implements ServiceProviderInterface
} }
} }
return new Validator( return $app['validator.builder']->getValidator();
$app['validator.mapping.class_metadata_factory'], });
$app['validator.validator_factory'],
isset($app['translator']) ? $app['translator'] : new DefaultTranslator(), $app['validator.builder'] = $app->share(function ($app) {
'validators', $builder = Validation::createValidatorBuilder();
$app['validator.object_initializers'] $builder->setConstraintValidatorFactory($app['validator.validator_factory']);
); $builder->setTranslationDomain('validators');
$builder->addObjectInitializers($app['validator.object_initializers']);
$builder->setMetadataFactory($app['validator.mapping.class_metadata_factory']);
if (isset($app['translator'])) {
$builder->setTranslator($app['translator']);
}
return $builder;
}); });
$app['validator.mapping.class_metadata_factory'] = $app->share(function ($app) { $app['validator.mapping.class_metadata_factory'] = $app->share(function ($app) {
if (class_exists('Symfony\Component\Validator\Mapping\Factory\LazyLoadingMetadataFactory')) {
return new LazyLoadingMetadataFactory(new StaticMethodLoader());
}
return new ClassMetadataFactory(new StaticMethodLoader()); return new ClassMetadataFactory(new StaticMethodLoader());
}); });
......
...@@ -69,7 +69,7 @@ class ValidatorServiceProviderTest extends \PHPUnit_Framework_TestCase ...@@ -69,7 +69,7 @@ class ValidatorServiceProviderTest extends \PHPUnit_Framework_TestCase
*/ */
public function testValidatorServiceIsAValidator($app) public function testValidatorServiceIsAValidator($app)
{ {
$this->assertInstanceOf('Symfony\Component\Validator\Validator', $app['validator']); $this->assertInstanceOf('Symfony\Component\Validator\ValidatorInterface', $app['validator']);
} }
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment