Passed
Push — master ( d21aeb...6f7326 )
by Alexander
27:36 queued 12:36
created

MiddlewareProvider   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 11
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 8
c 1
b 0
f 0
dl 0
loc 11
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A register() 0 9 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace App\Provider;
6
7
use Psr\Container\ContainerInterface;
8
use Yiisoft\Di\Container;
9
use Yiisoft\Di\Support\ServiceProvider;
10
use Yiisoft\Router\Middleware\Router;
11
use Yiisoft\Yii\Web\MiddlewareDispatcher;
12
use Yiisoft\Yii\Web\ErrorHandler\ErrorCatcher;
13
use Yiisoft\Yii\Web\Middleware\Csrf;
14
use Yiisoft\Yii\Web\Middleware\SubFolder;
15
use Yiisoft\Yii\Web\Session\SessionMiddleware;
16
17
final class MiddlewareProvider extends ServiceProvider
18
{
19
    public function register(Container $container): void
20
    {
21
        $container->set(MiddlewareDispatcher::class, static function (ContainerInterface $container) {
22
            return (new MiddlewareDispatcher($container))
23
                ->addMiddleware($container->get(Router::class))
24
                ->addMiddleware($container->get(SubFolder::class))
25
                ->addMiddleware($container->get(SessionMiddleware::class))
26
                ->addMiddleware($container->get(Csrf::class))
27
                ->addMiddleware($container->get(ErrorCatcher::class));
28
        });
29
    }
30
}
31