Completed
Push — master ( fb8ce4...a7fcd1 )
by Cheren
02:00
created

Application::middleware()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 26
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 1 Features 0
Metric Value
c 1
b 1
f 0
dl 0
loc 26
rs 8.8571
cc 1
eloc 7
nc 1
nop 1
1
<?php
2
/**
3
 * CakeCMS Core
4
 *
5
 * This file is part of the of the simple cms based on CakePHP 3.
6
 * For the full copyright and license information, please view the LICENSE
7
 * file that was distributed with this source code.
8
 *
9
 * @package     Core
10
 * @license     MIT
11
 * @copyright   MIT License http://www.opensource.org/licenses/mit-license.php
12
 * @link        https://github.com/CakeCMS/Core".
13
 * @author      Sergey Kalistratov <[email protected]>
14
 */
15
16
namespace Core;
17
18
use Cake\Http\BaseApplication;
19
use Core\View\Middleware\ThemeMiddleware;
20
use Cake\Routing\Middleware\AssetMiddleware;
21
use Cake\Routing\Middleware\RoutingMiddleware;
22
use Cake\Error\Middleware\ErrorHandlerMiddleware;
23
24
/**
25
 * Class Application
26
 *
27
 * @package App
28
 */
29
class Application extends BaseApplication
30
{
31
32
    /**
33
     * Setup the middleware queue your application will use.
34
     *
35
     * @param   \Cake\Http\MiddlewareQueue $middlewareQueue The middleware queue to setup.
36
     * @return  \Cake\Http\MiddlewareQueue The updated middleware queue.
37
     */
38
    public function middleware($middlewareQueue)
39
    {
40
        $middlewareQueue
41
42
            /** Catch any exceptions in the lower layers, and make an error page/response */
43
            ->add(ErrorHandlerMiddleware::class)
44
45
            /** Handle plugin/theme assets like CakePHP normally does. */
46
            ->add(AssetMiddleware::class)
47
48
            /**
49
             * Add routing middleware.
50
             * Routes collection cache enabled by default, to disable route caching pass null as cacheConfig, example:
51
             * `new RoutingMiddleware($this)` you might want to disable this cache in case your routing
52
             * is extremely simple.
53
             */
54
            ->add(new RoutingMiddleware($this, '_cake_routes_'))
55
56
            /**
57
             * Add theme middleware.
58
             * Setup request params 'theme'. Param hold current theme name.
59
             */
60
            ->add(ThemeMiddleware::class);
61
62
        return $middlewareQueue;
63
    }
64
}
65