<?php declare(strict_types=1); namespace GitList; use Symfony\Bundle\DebugBundle\DebugBundle; use Symfony\Bundle\FrameworkBundle\FrameworkBundle; use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait; use Symfony\Bundle\MonologBundle\MonologBundle; use Symfony\Bundle\TwigBundle\TwigBundle; use Symfony\Component\Config\Loader\LoaderInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; use Symfony\Component\HttpKernel\Kernel as BaseKernel; use Symfony\Component\Routing\Loader\Configurator\RoutingConfigurator; use Symfony\WebpackEncoreBundle\WebpackEncoreBundle; class Kernel extends BaseKernel { use MicroKernelTrait; public function getProjectDir(): string { return __DIR__.'/../'; } public function getCacheDir(): string { return $this->getProjectDir().'/var/cache/'.$this->environment; } public function getLogDir(): string { return $this->getProjectDir().'/var/log'; } public function registerBundles(): iterable { $bundles = [ FrameworkBundle::class, TwigBundle::class, MonologBundle::class, WebpackEncoreBundle::class, ]; if ($this->debug) { $bundles[] = DebugBundle::class; } foreach ($bundles as $bundle) { yield new $bundle(); } } private function configureContainer(ContainerConfigurator $container, LoaderInterface $loader, ContainerBuilder $builder): void { $confDir = $this->getProjectDir().'/config'; $loader->load($confDir.'/config.yml'); $loader->load($confDir.'/framework.yml'); $loader->load($confDir.'/services.yml'); } private function configureRoutes(RoutingConfigurator $routes): void { $confDir = $this->getProjectDir().'/config'; $routes->import($confDir.'/routes.yml'); if ('dev' == $this->environment) { $routes->import($confDir.'/dev/routes.yml'); } } }