You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
3.1 KiB
67 lines
3.1 KiB
<?php
|
|
|
|
namespace Symfony\Bridge\PsrHttpMessage\Tests\Fixtures\App;
|
|
|
|
use Nyholm\Psr7\Factory\Psr17Factory;
|
|
use Psr\Http\Message\ResponseFactoryInterface;
|
|
use Psr\Http\Message\ServerRequestFactoryInterface;
|
|
use Psr\Http\Message\StreamFactoryInterface;
|
|
use Psr\Http\Message\UploadedFileFactoryInterface;
|
|
use Psr\Log\NullLogger;
|
|
use Symfony\Bridge\PsrHttpMessage\ArgumentValueResolver\PsrServerRequestResolver;
|
|
use Symfony\Bridge\PsrHttpMessage\EventListener\PsrResponseListener;
|
|
use Symfony\Bridge\PsrHttpMessage\Factory\HttpFoundationFactory;
|
|
use Symfony\Bridge\PsrHttpMessage\Factory\PsrHttpFactory;
|
|
use Symfony\Bridge\PsrHttpMessage\HttpFoundationFactoryInterface;
|
|
use Symfony\Bridge\PsrHttpMessage\HttpMessageFactoryInterface;
|
|
use Symfony\Bridge\PsrHttpMessage\Tests\Fixtures\App\Controller\PsrRequestController;
|
|
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
|
|
use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait;
|
|
use Symfony\Component\Config\Loader\LoaderInterface;
|
|
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
|
use Symfony\Component\HttpKernel\Kernel as SymfonyKernel;
|
|
use Symfony\Component\Routing\RouteCollectionBuilder;
|
|
|
|
class Kernel44 extends SymfonyKernel
|
|
{
|
|
use MicroKernelTrait;
|
|
|
|
public function registerBundles(): iterable
|
|
{
|
|
yield new FrameworkBundle();
|
|
}
|
|
|
|
public function getProjectDir(): string
|
|
{
|
|
return __DIR__;
|
|
}
|
|
|
|
protected function configureRoutes(RouteCollectionBuilder $routes): void
|
|
{
|
|
$routes->add('/server-request', PsrRequestController::class.'::serverRequestAction')->setMethods(['GET']);
|
|
$routes->add('/request', PsrRequestController::class.'::requestAction')->setMethods(['POST']);
|
|
$routes->add('/message', PsrRequestController::class.'::messageAction')->setMethods(['PUT']);
|
|
}
|
|
|
|
protected function configureContainer(ContainerBuilder $container, LoaderInterface $loader): void
|
|
{
|
|
$container->loadFromExtension('framework', [
|
|
'secret' => 'for your eyes only',
|
|
'test' => true,
|
|
]);
|
|
|
|
$container->register('nyholm.psr_factory', Psr17Factory::class);
|
|
$container->setAlias(ResponseFactoryInterface::class, 'nyholm.psr_factory');
|
|
$container->setAlias(ServerRequestFactoryInterface::class, 'nyholm.psr_factory');
|
|
$container->setAlias(StreamFactoryInterface::class, 'nyholm.psr_factory');
|
|
$container->setAlias(UploadedFileFactoryInterface::class, 'nyholm.psr_factory');
|
|
|
|
$container->register(HttpFoundationFactoryInterface::class, HttpFoundationFactory::class)->setAutowired(true)->setAutoconfigured(true);
|
|
$container->register(HttpMessageFactoryInterface::class, PsrHttpFactory::class)->setAutowired(true)->setAutoconfigured(true);
|
|
$container->register(PsrResponseListener::class)->setAutowired(true)->setAutoconfigured(true);
|
|
$container->register(PsrServerRequestResolver::class)->setAutowired(true)->setAutoconfigured(true);
|
|
|
|
$container->register('logger', NullLogger::class);
|
|
$container->register(PsrRequestController::class)->setPublic(true)->setAutowired(true);
|
|
}
|
|
}
|
|
|