ILIAS
trunk Revision v11.0_alpha-3011-gc6b235a2e85
◀ ilDoc Overview
StandardToastRendererFactory.php
Go to the documentation of this file.
1
<?php
2
19
declare(strict_types=1);
20
21
namespace
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer
;
22
23
use
ILIAS\DI\UIServices
;
24
use
ILIAS\GlobalScreen\Scope\Toast\Factory\isStandardItem
;
25
use
ILIAS\GlobalScreen\Scope\Toast\Factory\StandardToastItem
;
26
30
class
StandardToastRendererFactory
implements
ToastRendererFactory
31
{
32
protected
array
$renderers
= [];
33
34
public
function
__construct
(
protected
UIServices
$ui)
35
{
36
}
37
38
public
function
getRenderer
(
string
$fully_qualified):
ToastRenderer
39
{
40
$renderer
= $this->
ensureRenderer
($fully_qualified);
41
if
(!
$renderer
instanceof
ToastRenderer
) {
42
throw
new \InvalidArgumentException(
"Cannot render item of type "
. $fully_qualified);
43
}
44
return
$renderer
;
45
}
46
47
public
function
buildRenderer
(
string
$fully_qualified): ?
ToastRenderer
48
{
49
$renderer
=
null
;
50
switch
($fully_qualified) {
51
case
isStandardItem::class:
52
$renderer
=
new
StandardToastRenderer
($this->
ui
);
53
break
;
54
case
StandardToastItem::class:
55
$renderer
=
new
StandardToastRenderer
($this->
ui
);
56
break
;
57
default
:
58
$renderer
=
null
;
59
break
;
60
}
61
return
$renderer
;
62
}
63
64
private
function
ensureRenderer
(
string
$fully_qualified): ?
ToastRenderer
65
{
66
if
(!isset($this->renderers[$fully_qualified])) {
67
$this->renderers[$fully_qualified] = $this->
buildRenderer
($fully_qualified);
68
}
69
return
$this->renderers[$fully_qualified];
70
}
71
}
$renderer
$renderer
Definition:
build_bootstrap.php:83
ILIAS\DI\UIServices
Provides fluid interface to RBAC services.
Definition:
UIServices.php:25
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRendererFactory
Definition:
StandardToastRendererFactory.php:31
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRendererFactory\__construct
__construct(protected UIServices $ui)
Definition:
StandardToastRendererFactory.php:34
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRendererFactory\buildRenderer
buildRenderer(string $fully_qualified)
Definition:
StandardToastRendererFactory.php:47
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRendererFactory\getRenderer
getRenderer(string $fully_qualified)
Definition:
StandardToastRendererFactory.php:38
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRendererFactory\$renderers
array $renderers
Definition:
StandardToastRendererFactory.php:32
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRendererFactory\ensureRenderer
ensureRenderer(string $fully_qualified)
Definition:
StandardToastRendererFactory.php:64
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\StandardToastRenderer
Definition:
StandardToastRenderer.php:36
ILIAS\GlobalScreen\Scope\Toast\Factory\StandardToastItem
Definition:
StandardToastItem.php:31
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\ToastRendererFactory
Definition:
ToastRendererFactory.php:29
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer\ToastRenderer
Definition:
ToastRenderer.php:31
ILIAS\GlobalScreen\Scope\Toast\Factory\isStandardItem
Interface isItem.
Definition:
isStandardItem.php:31
ILIAS\GlobalScreen\Scope\Toast\Collector\Renderer
Definition:
StandardToastRenderer.php:21
ILIAS\Repository\ui
ui()
Definition:
trait.GlobalDICGUIServices.php:53
components
ILIAS
GlobalScreen
src
Scope
Toast
Collector
Renderer
StandardToastRendererFactory.php
Generated on Sat Oct 18 2025 23:03:08 for ILIAS by
1.9.4 (using
Doxyfile
)