Commit 182ecf05 authored by Fabien Potencier's avatar Fabien Potencier

removed obsolete code

parent f1f9ce42
<?php
/*
* This file is part of the Silex framework.
*
* (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 Silex;
use Psr\Log\LoggerInterface;
use Symfony\Component\HttpKernel\Controller\ControllerResolver as BaseControllerResolver;
use Symfony\Component\HttpFoundation\Request;
/**
* Adds Application as a valid argument for controllers.
*
* @author Fabien Potencier <fabien@symfony.com>
*
* @deprecated This class can be dropped once Symfony 3.0 is not supported anymore.
*/
class ControllerResolver extends BaseControllerResolver
{
protected $app;
/**
* Constructor.
*
* @param Application $app An Application instance
* @param LoggerInterface $logger A LoggerInterface instance
*/
public function __construct(Application $app, LoggerInterface $logger = null)
{
$this->app = $app;
parent::__construct($logger);
}
protected function doGetArguments(Request $request, $controller, array $parameters)
{
foreach ($parameters as $param) {
if ($param->getClass() && $param->getClass()->isInstance($this->app)) {
$request->attributes->set($param->getName(), $this->app);
break;
}
}
return parent::doGetArguments($request, $controller, $parameters);
}
}
......@@ -7,23 +7,17 @@ use Pimple\ServiceProviderInterface;
use Silex\Api\EventListenerProviderInterface;
use Silex\AppArgumentValueResolver;
use Silex\CallbackResolver;
use Silex\ControllerResolver;
use Silex\EventListener\ConverterListener;
use Silex\EventListener\MiddlewareListener;
use Silex\EventListener\StringToResponseListener;
use Symfony\Component\EventDispatcher\EventDispatcher;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestAttributeValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\RequestValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\DefaultValueResolver;
use Symfony\Component\HttpKernel\Controller\ArgumentResolver\VariadicValueResolver;
use Symfony\Component\HttpKernel\Controller\ControllerResolver as SfControllerResolver;
use Symfony\Component\HttpKernel\Controller\ControllerResolver;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpKernel\ControllerMetadata\ArgumentMetadataFactory;
use Symfony\Component\HttpKernel\EventListener\ResponseListener;
use Symfony\Component\HttpKernel\HttpKernel;
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\WebLink\EventListener\AddLinkHeaderListener;
use Symfony\Component\WebLink\HttpHeaderSerializer;
......@@ -35,36 +29,18 @@ class HttpKernelServiceProvider implements ServiceProviderInterface, EventListen
public function register(Container $app)
{
$app['resolver'] = function ($app) {
if (Kernel::VERSION_ID >= 30100) {
return new SfControllerResolver($app['logger']);
}
return new ControllerResolver($app, $app['logger']);
return new ControllerResolver($app['logger']);
};
if (Kernel::VERSION_ID >= 30100) {
$app['argument_metadata_factory'] = function ($app) {
return new ArgumentMetadataFactory();
};
$app['argument_value_resolvers'] = function ($app) {
if (Kernel::VERSION_ID < 30200) {
return [
new AppArgumentValueResolver($app),
new RequestAttributeValueResolver(),
new RequestValueResolver(),
new DefaultValueResolver(),
new VariadicValueResolver(),
];
}
return array_merge([new AppArgumentValueResolver($app)], ArgumentResolver::getDefaultArgumentValueResolvers());
};
}
$app['argument_metadata_factory'] = function ($app) {
return new ArgumentMetadataFactory();
};
$app['argument_value_resolvers'] = function ($app) {
return array_merge([new AppArgumentValueResolver($app)], ArgumentResolver::getDefaultArgumentValueResolvers());
};
$app['argument_resolver'] = function ($app) {
if (Kernel::VERSION_ID >= 30100) {
return new ArgumentResolver($app['argument_metadata_factory'], $app['argument_value_resolvers']);
}
return new ArgumentResolver($app['argument_metadata_factory'], $app['argument_value_resolvers']);
};
$app['kernel'] = function ($app) {
......
......@@ -13,10 +13,8 @@ namespace Silex\Provider;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Translation\Translator;
use Symfony\Component\Translation\Formatter\MessageFormatter;
use Symfony\Component\Translation\MessageSelector;
use Symfony\Component\Translation\Loader\ArrayLoader;
use Symfony\Component\Translation\Loader\XliffFileLoader;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
......@@ -79,10 +77,6 @@ class TranslationServiceProvider implements ServiceProviderInterface, EventListe
}
$app['translator.message_selector'] = function () {
if (Kernel::VERSION_ID < 30400) {
return new MessageSelector();
}
return new MessageFormatter();
};
......
......@@ -25,11 +25,8 @@ use Symfony\Bridge\Twig\Extension\HttpFoundationExtension;
use Symfony\Bridge\Twig\Extension\HttpKernelExtension;
use Symfony\Bridge\Twig\Extension\WebLinkExtension;
use Symfony\Bridge\Twig\Form\TwigRendererEngine;
use Symfony\Bridge\Twig\Form\TwigRenderer;
use Symfony\Bridge\Twig\Extension\HttpKernelRuntime;
use Symfony\Component\Form\FormRenderer;
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\WebLink\HttpHeaderSerializer;
/**
* Twig integration for Silex.
......@@ -128,10 +125,6 @@ class TwigServiceProvider implements ServiceProviderInterface
$app['twig.form.renderer'] = function ($app) {
$csrfTokenManager = isset($app['csrf.token_manager']) ? $app['csrf.token_manager'] : null;
if (Kernel::VERSION_ID < 30400) {
return new TwigRenderer($app['twig.form.engine'], $csrfTokenManager);
}
return new FormRenderer($app['twig.form.engine'], $csrfTokenManager);
};
......@@ -147,13 +140,8 @@ class TwigServiceProvider implements ServiceProviderInterface
$twig->addExtension(new DumpExtension($app['var_dumper.cloner']));
}
if (class_exists(HttpKernelRuntime::class)) {
$twig->addRuntimeLoader($app['twig.runtime_loader']);
}
if (class_exists(HttpHeaderSerializer::class) && class_exists(WebLinkExtension::class)) {
$twig->addExtension(new WebLinkExtension($app['request_stack']));
}
$twig->addRuntimeLoader($app['twig.runtime_loader']);
$twig->addExtension(new WebLinkExtension($app['request_stack']));
}
return $twig;
......@@ -192,19 +180,10 @@ class TwigServiceProvider implements ServiceProviderInterface
};
$app['twig.runtimes'] = function ($app) {
$runtimes = [];
if (class_exists(HttpKernelRuntime::class)) {
$runtimes[HttpKernelRuntime::class] = 'twig.runtime.httpkernel';
}
if (Kernel::VERSION_ID < 30400) {
$runtimes[TwigRenderer::class] = 'twig.form.renderer';
} else {
$runtimes[FormRenderer::class] = 'twig.form.renderer';
}
return $runtimes;
return [
HttpKernelRuntime::class => 'twig.runtime.httpkernel',
FormRenderer::class => 'twig.form.renderer',
];
};
$app['twig.runtime_loader'] = function ($app) {
......
<?php
/*
* This file is part of the Silex framework.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* This source file is subject to the MIT license that is bundled
* with this source code in the file LICENSE.
*/
namespace Silex\Tests;
use PHPUnit\Framework\TestCase;
use Silex\ControllerResolver;
use Silex\Application;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\Kernel;
/**
* ControllerResolver test cases.
*
* @author Fabien Potencier <fabien@symfony.com>
*/
class ControllerResolverTest extends TestCase
{
/**
* @group legacy
*/
public function testGetArguments()
{
if (Kernel::VERSION_ID >= 30100) {
self::markTestSkipped('HttpKernel < 3.1.0 is required');
}
$app = new Application();
$resolver = new ControllerResolver($app);
$controller = function (Application $app) {};
$args = $resolver->getArguments(Request::create('/'), $controller);
$this->assertSame($app, $args[0]);
}
}
......@@ -20,7 +20,6 @@ use Silex\Provider\MonologServiceProvider;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use Symfony\Component\HttpKernel\Kernel;
/**
* MonologProvider test cases.
......@@ -59,12 +58,8 @@ class MonologServiceProviderTest extends TestCase
$this->assertTrue($app['monolog.handler']->hasDebug('< 200'));
$records = $app['monolog.handler']->getRecords();
if (Kernel::VERSION_ID < 30100) {
$this->assertContains('Matched route "GET_foo"', $records[0]['message']);
} else {
$this->assertContains('Matched route "{route}".', $records[0]['message']);
$this->assertSame('GET_foo', $records[0]['context']['route']);
}
$this->assertContains('Matched route "{route}".', $records[0]['message']);
$this->assertSame('GET_foo', $records[0]['context']['route']);
}
public function testManualLogging()
......
......@@ -13,7 +13,6 @@ namespace Silex\Tests\Provider\SecurityServiceProviderTest;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\Security\Core\User\UserInterface;
use Symfony\Component\Security\Core\User\UserProviderInterface;
use Symfony\Component\Security\Guard\AbstractGuardAuthenticator;
......@@ -28,7 +27,7 @@ class TokenAuthenticator extends AbstractGuardAuthenticator
public function getCredentials(Request $request)
{
if (!$token = $request->headers->get('X-AUTH-TOKEN')) {
return Kernel::VERSION_ID < 30400 ? null : false;
return false;
}
list($username, $secret) = explode(':', $token);
......
......@@ -20,7 +20,6 @@ use Silex\Provider\TwigServiceProvider;
use Silex\Provider\AssetServiceProvider;
use Symfony\Bridge\Twig\Extension\WebLinkExtension;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\Kernel;
use Symfony\Component\WebLink\HttpHeaderSerializer;
/**
......@@ -112,11 +111,7 @@ class TwigServiceProviderTest extends TestCase
$this->assertInstanceOf('Twig_Environment', $app['twig']);
$this->assertInstanceOf('Symfony\Bridge\Twig\Form\TwigRendererEngine', $app['twig.form.engine']);
if (Kernel::VERSION_ID < 30400) {
$this->assertInstanceOf('Symfony\Bridge\Twig\Form\TwigRenderer', $app['twig.form.renderer']);
} else {
$this->assertInstanceOf('Symfony\Component\Form\FormRenderer', $app['twig.form.renderer']);
}
$this->assertInstanceOf('Symfony\Component\Form\FormRenderer', $app['twig.form.renderer']);
}
public function testFormWithoutCsrf()
......
......@@ -20,7 +20,6 @@ use Symfony\Component\Translation\Exception\NotFoundResourceException;
use Symfony\Component\Validator\Constraints as Assert;
use Silex\Tests\Provider\ValidatorServiceProviderTest\Constraint\Custom;
use Silex\Tests\Provider\ValidatorServiceProviderTest\Constraint\CustomValidator;
use Symfony\Component\Validator\ValidatorInterface as LegacyValidatorInterface;
use Symfony\Component\Validator\Validator\ValidatorInterface;
/**
......@@ -86,7 +85,7 @@ class ValidatorServiceProviderTest extends TestCase
*/
public function testValidatorServiceIsAValidator($app)
{
$this->assertTrue($app['validator'] instanceof ValidatorInterface || $app['validator'] instanceof LegacyValidatorInterface);
$this->assertTrue($app['validator'] instanceof ValidatorInterface);
}
/**
......
......@@ -15,7 +15,6 @@ use PHPUnit\Framework\TestCase;
use Silex\ServiceControllerResolver;
use Silex\Application;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\Kernel;
/**
* Unit tests for ServiceControllerResolver, see ServiceControllerResolverRouterTest for some
......@@ -77,22 +76,4 @@ class ServiceControllerResolverTest extends Testcase
$this->assertEquals(123, $this->resolver->getController($req));
}
/**
* @group legacy
*/
public function testShouldDelegateGetArguments()
{
if (Kernel::VERSION_ID >= 40000) {
self::markTestSkipped('HttpKernel < 4.0 is required');
}
$req = Request::create('/');
$this->mockResolver->expects($this->once())
->method('getArguments')
->with($req)
->will($this->returnValue(123));
$this->assertEquals(123, $this->resolver->getArguments($req, function () {}));
}
}
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