forked from tastphp/framework
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathKernel.php
More file actions
109 lines (101 loc) · 3.62 KB
/
Copy pathKernel.php
File metadata and controls
109 lines (101 loc) · 3.62 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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<?php
namespace TastPHP\Framework;
use Symfony\Component\Yaml\Yaml;
use TastPHP\Framework\Cache\Cache;
use TastPHP\Framework\Cache\CacheServiceProvider;
use TastPHP\Framework\Cache\FileCache;
use TastPHP\Framework\Cache\FileCacheServiceProvider;
use TastPHP\Framework\Cache\RedisServiceProvider;
use TastPHP\Framework\Config\Config;
use TastPHP\Framework\Config\ConfigServiceProvider;
use TastPHP\Framework\Container\PimpleContainerProvider;
use TastPHP\Framework\CsrfToken\CsrfTokenServiceProvider;
use TastPHP\Framework\Doctrine\DoctrineServiceProvider;
use TastPHP\Framework\EventDispatcher\EventDispatcher;
use TastPHP\Framework\EventDispatcher\EventDispatcherServiceProvider;
use TastPHP\Framework\ExceptionHandler\ExceptionHandlerServiceProvider;
use TastPHP\Framework\Container\Container;
use TastPHP\Framework\Jwt\JwtBuilder;
use TastPHP\Framework\Jwt\JwtParser;
use TastPHP\Framework\Jwt\JwtServiceProvider;
use TastPHP\Framework\Jwt\JwtSigner;
use TastPHP\Framework\ListenerRegister\ListenerRegisterServiceProvider;
use TastPHP\Framework\Logger\Logger;
use TastPHP\Framework\Logger\LoggerServiceProvider;
use TastPHP\Framework\Queue\Queue;
use TastPHP\Framework\Queue\QueueServiceProvider;
use TastPHP\Framework\Router\Router;
use TastPHP\Framework\Router\RouterServiceProvider;
use TastPHP\Framework\Service\ServiceProvider;
use TastPHP\Framework\SwiftMailer\SwiftMailerServiceProvider;
use TastPHP\Framework\Traits\KernelListeners;
use TastPHP\Framework\Traits\KernelTrait;
use TastPHP\Framework\Twig\Twig;
use TastPHP\Framework\Twig\TwigServiceProvider;
/**
* Class Kernel
* @package TastPHP\Framework
*/
class Kernel extends Container
{
/**
* @var Kernel
*/
private static $instance;
/**
* @var array
*/
protected $aliases = [
'Kernel' => Kernel::class,
'Config' => Config::class,
'Cache' => Cache::class,
'FileCache' => FileCache::class,
'ServiceProvider' => ServiceProvider::class,
'Logger' => Logger::class,
'EventDispatcher' => EventDispatcher::class,
'Router' => Router::class,
'Yaml' => Yaml::class,
'Twig' => Twig::class,
'JwtBuilder' => JwtBuilder::class,
'JwtParser' => JwtParser::class,
'JwtSigner' => JwtSigner::class,
'Queue' => Queue::class,
];
/**
* @var array
*/
protected $serviceProviders = [
'Config' => ConfigServiceProvider::class,
'Redis' => RedisServiceProvider::class,
'Cache' => CacheServiceProvider::class,
'FileCache' => FileCacheServiceProvider::class,
'Logger' => LoggerServiceProvider::class,
'EventDispatcher' => EventDispatcherServiceProvider::class,
'Twig' => TwigServiceProvider::class,
'Doctrine' => DoctrineServiceProvider::class,
'CsrfToken' => CsrfTokenServiceProvider::class,
'Jwt' => JwtServiceProvider::class,
'ListenerRegister' => ListenerRegisterServiceProvider::class,
'SwiftMailer' => SwiftMailerServiceProvider::class,
'Queue' => QueueServiceProvider::class,
'Router' => RouterServiceProvider::class,
'ExceptionHandler' => ExceptionHandlerServiceProvider::class,
'Container' => PimpleContainerProvider::class
];
use KernelListeners;
/**
* Kernel constructor.
* @param array $values
*/
public function __construct(array $values = [])
{
$start = microtime(true);
$this['version'] = 'v1.3.2';
$this['start_time'] = $start;
self::$instance = $this;
parent::__construct($values);
$this->aliasLoader();
$this->registerServices();
}
use KernelTrait;
}