Passed
Pull Request — master (#117)
by Romain
07:10 queued 30s
created

ShowDefinitionController::processAction()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 0
dl 0
loc 4
rs 10
c 0
b 0
f 0
1
<?php
2
3
/*
4
 * Copyright (C) 2018
5
 * Nathan Boiron <[email protected]>
6
 * Romain Canon <[email protected]>
7
 *
8
 * This file is part of the TYPO3 NotiZ project.
9
 * It is free software; you can redistribute it and/or modify it
10
 * under the terms of the GNU General Public License, either
11
 * version 3 of the License, or any later version.
12
 *
13
 * For the full copyright and license information, see:
14
 * http://www.gnu.org/licenses/gpl-3.0.html
15
 */
16
17
namespace CuyZ\Notiz\Controller\Backend\Administration;
18
19
use CuyZ\Notiz\Controller\Backend\BackendController;
20
use CuyZ\Notiz\Controller\Backend\Menu;
21
use CuyZ\Notiz\Core\Definition\DefinitionTransformer;
22
use CuyZ\Notiz\Service\RuntimeService;
23
use Throwable;
24
25
class ShowDefinitionController extends BackendController
26
{
27
    /**
28
     * @var DefinitionTransformer
29
     */
30
    protected $definitionTransformer;
31
32
    /**
33
     * @var RuntimeService
34
     */
35
    protected $runtimeService;
36
37
    /**
38
     * Shows a tree for all definition values as well as errors and warnings
39
     * for every entry.
40
     */
41
    public function processAction()
42
    {
43
        $this->view->assign('definition', $this->definitionTransformer->getDefinitionArray());
44
        $this->view->assign('exception', $this->runtimeService->getException());
45
    }
46
47
    /**
48
     * This action will be called if an exception was thrown during the building
49
     * of the definition. The exception will be displayed, using TYPO3 core
50
     * exception handling.
51
     *
52
     * @throws Throwable
53
     */
54
    public function showExceptionAction()
55
    {
56
        $exception = $this->runtimeService->getException();
57
58
        if (!$exception) {
0 ignored issues
show
introduced by
$exception is of type Throwable, thus it always evaluated to true.
Loading history...
59
            $this->forward('process');
60
        }
61
62
        throw $exception;
63
    }
64
65
    /**
66
     * @inheritdoc
67
     */
68
    protected function getMenu()
69
    {
70
        return Menu::ADMINISTRATION_DEFINITION;
71
    }
72
73
    /**
74
     * @param DefinitionTransformer $definitionTransformer
75
     */
76
    public function injectDefinitionTransformer(DefinitionTransformer $definitionTransformer)
77
    {
78
        $this->definitionTransformer = $definitionTransformer;
79
    }
80
81
    /**
82
     * @param RuntimeService $runtimeService
83
     */
84
    public function injectRuntimeService(RuntimeService $runtimeService)
85
    {
86
        $this->runtimeService = $runtimeService;
87
    }
88
}
89