1 | <?php |
||||||
2 | declare(strict_types=1); |
||||||
3 | |||||||
4 | /* |
||||||
5 | * Copyright (C) |
||||||
6 | * Nathan Boiron <[email protected]> |
||||||
7 | * Romain Canon <[email protected]> |
||||||
8 | * |
||||||
9 | * This file is part of the TYPO3 NotiZ project. |
||||||
10 | * It is free software; you can redistribute it and/or modify it |
||||||
11 | * under the terms of the GNU General Public License, either |
||||||
12 | * version 3 of the License, or any later version. |
||||||
13 | * |
||||||
14 | * For the full copyright and license information, see: |
||||||
15 | * http://www.gnu.org/licenses/gpl-3.0.html |
||||||
16 | */ |
||||||
17 | |||||||
18 | namespace CuyZ\Notiz\Service; |
||||||
19 | |||||||
20 | use CuyZ\Notiz\Service\Traits\ExtendedSelfInstantiateTrait; |
||||||
21 | use TYPO3\CMS\Core\Authentication\BackendUserAuthentication; |
||||||
22 | use TYPO3\CMS\Core\SingletonInterface; |
||||||
23 | use TYPO3\CMS\Extbase\Object\ObjectManager; |
||||||
0 ignored issues
–
show
|
|||||||
24 | use TYPO3\CMS\Frontend\Page\PageRepository; |
||||||
0 ignored issues
–
show
The type
TYPO3\CMS\Frontend\Page\PageRepository was not found. Maybe you did not declare it correctly or list all dependencies?
The issue could also be caused by a filter entry in the build configuration.
If the path has been excluded in your configuration, e.g. filter:
dependency_paths: ["lib/*"]
For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths ![]() |
|||||||
25 | |||||||
26 | class Container implements SingletonInterface |
||||||
27 | { |
||||||
28 | use ExtendedSelfInstantiateTrait { |
||||||
29 | get as getInstance; |
||||||
30 | } |
||||||
31 | |||||||
32 | /** |
||||||
33 | * @var ObjectManager |
||||||
34 | */ |
||||||
35 | protected $objectManager; |
||||||
36 | |||||||
37 | /** |
||||||
38 | * @var PageRepository |
||||||
39 | */ |
||||||
40 | protected $pageRepository; |
||||||
41 | |||||||
42 | /** |
||||||
43 | * @param ObjectManager $objectManager |
||||||
44 | */ |
||||||
45 | public function __construct(ObjectManager $objectManager) |
||||||
46 | { |
||||||
47 | $this->objectManager = $objectManager; |
||||||
48 | } |
||||||
49 | |||||||
50 | /** |
||||||
51 | * @param string $className |
||||||
52 | * @param mixed ...$arguments |
||||||
53 | * @return object |
||||||
54 | */ |
||||||
55 | public static function get(string $className, ...$arguments) |
||||||
56 | { |
||||||
57 | return static::getInstance()->objectManager->get($className, ...$arguments); |
||||||
58 | } |
||||||
59 | |||||||
60 | /** |
||||||
61 | * @return BackendUserAuthentication |
||||||
62 | */ |
||||||
63 | public static function getBackendUser(): BackendUserAuthentication |
||||||
64 | { |
||||||
65 | return $GLOBALS['BE_USER']; |
||||||
66 | } |
||||||
67 | |||||||
68 | /** |
||||||
69 | * @return PageRepository |
||||||
70 | */ |
||||||
71 | public static function getPageRepository(): PageRepository |
||||||
72 | { |
||||||
73 | $instance = self::getInstance(); |
||||||
74 | |||||||
75 | if (null === $instance->pageRepository) { |
||||||
76 | $instance->pageRepository = $instance->get(PageRepository::class); |
||||||
0 ignored issues
–
show
The call to
CuyZ\Notiz\Service\Trait...InstantiateTrait::get() has too many arguments starting with TYPO3\CMS\Frontend\Page\PageRepository::class .
(
Ignorable by Annotation
)
If this is a false-positive, you can also ignore this issue in your code via the
This check compares calls to functions or methods with their respective definitions. If the call has more arguments than are defined, it raises an issue. If a function is defined several times with a different number of parameters, the check may pick up the wrong definition and report false positives. One codebase where this has been known to happen is Wordpress. Please note the @ignore annotation hint above. ![]() |
|||||||
77 | } |
||||||
78 | |||||||
79 | return $instance->pageRepository; |
||||||
80 | } |
||||||
81 | } |
||||||
82 |
The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g.
excluded_paths: ["lib/*"]
, you can move it to the dependency path list as follows:For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths