-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathKernel.php
More file actions
58 lines (49 loc) · 2.02 KB
/
Copy pathKernel.php
File metadata and controls
58 lines (49 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
namespace App;
use App\Controller\ApiController;
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait;
use Symfony\Component\HttpKernel\Kernel as BaseKernel;
use Symfony\Component\Routing\Loader\Configurator\RoutingConfigurator;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
use function dirname;
require_once __DIR__ . '/../phpmyfaq.php';
class Kernel extends BaseKernel
{
use MicroKernelTrait;
public function registerBundles(): iterable
{
return [new FrameworkBundle()];
}
protected function configureContainer(ContainerConfigurator $container): void
{
$isTest = $this->getEnvironment() === 'test';
$container->extension('framework', [
'secret' => 'test-secret',
'http_method_override' => false,
'test' => $isTest,
'session' => [
'enabled' => false,
],
'router' => [
'utf8' => true,
],
]);
}
protected function configureRoutes(RoutingConfigurator $routes): void
{
$routes->add('home', '/')->controller([ApiController::class, 'home'])->methods(['GET']);
$routes->add('versions', '/versions')->controller([ApiController::class, 'versions'])->methods(['GET']);
$routes->add('version_stable', '/version/stable')->controller([ApiController::class, 'versionStable'])->methods(['GET']);
$routes->add('version_development', '/version/development')->controller([ApiController::class, 'versionDevelopment'])->methods(['GET']);
$routes->add('version_nightly', '/version/nightly')->controller([ApiController::class, 'versionNightly'])->methods(['GET']);
$routes->add('verify', '/verify/{version}')
->controller([ApiController::class, 'verify'])
->methods(['GET'])
->requirements(['version' => '.+']);
}
public function getProjectDir(): string
{
return dirname(__DIR__);
}
}