ILIAS
trunk Revision v11.0_alpha-2645-g16283d3b3f8
◀ ilDoc Overview
LazyProvide.php
Go to the documentation of this file.
1
<?php
2
19
declare(strict_types=1);
20
21
namespace
ILIAS\LegalDocuments
;
22
23
use
Closure
;
24
use
ILIAS\LegalDocuments\Provide\ProvidePublicPage
;
25
use
ILIAS\LegalDocuments\Provide\ProvideDocument
;
26
use
ILIAS\LegalDocuments\Provide\ProvideHistory
;
27
use
ILIAS\LegalDocuments\Provide\ProvideWithdrawal
;
28
use
ILIAS\LegalDocuments\ConsumerSlots\PublicApi
;
29
30
class
LazyProvide
extends
Provide
31
{
33
private
Closure
$provide
;
34
38
public
function
__construct
(
Closure
$create)
39
{
40
$this->provide =
function
() use ($create) {
41
$provide = $create();
42
$this->provide = fn() =>
$provide
;
43
return
$provide
;
44
};
45
}
46
47
public
function
withdrawal
():
ProvideWithdrawal
48
{
49
return
($this->provide)()->
withdrawal
();
50
}
51
52
public
function
publicPage
():
ProvidePublicPage
53
{
54
return
($this->provide)()->
publicPage
();
55
}
56
57
public
function
document
():
ProvideDocument
58
{
59
return
($this->provide)()->
document
();
60
}
61
62
public
function
history
():
ProvideHistory
63
{
64
return
($this->provide)()->
history
();
65
}
66
67
public
function
allowEditing
():
Provide
68
{
69
return
($this->provide)()->
allowEditing
();
70
}
71
72
public
function
publicApi
(): ?
PublicApi
73
{
74
return
($this->provide)()->
publicApi
();
75
}
76
77
public
function
id
(): string
78
{
79
return
($this->provide)()->
id
();
80
}
81
}
ILIAS\LegalDocuments
Definition:
Administration.php:21
ILIAS\LegalDocuments\Provide\ProvideHistory
Definition:
ProvideHistory.php:37
ILIAS\LegalDocuments\LazyProvide
Definition:
LazyProvide.php:30
ProvidePublicPage
Closure
ILIAS\LegalDocuments\LazyProvide\id
id()
Definition:
LazyProvide.php:77
ILIAS\LegalDocuments\LazyProvide\$provide
Closure $provide
Definition:
LazyProvide.php:33
ILIAS\LegalDocuments\LazyProvide\__construct
__construct(Closure $create)
Definition:
LazyProvide.php:38
ILIAS\LegalDocuments\LazyProvide\withdrawal
withdrawal()
Definition:
LazyProvide.php:47
ILIAS\LegalDocuments\LazyProvide\publicApi
publicApi()
Definition:
LazyProvide.php:72
ILIAS\LegalDocuments\LazyProvide\publicPage
publicPage()
Definition:
LazyProvide.php:52
ILIAS\LegalDocuments\Provide\ProvidePublicPage
Definition:
ProvidePublicPage.php:26
ProvideDocument
PublicApi
ProvideHistory
ILIAS\LegalDocuments\Provide
Definition:
Provide.php:31
ILIAS\LegalDocuments\LazyProvide\allowEditing
allowEditing()
Definition:
LazyProvide.php:67
ILIAS\LegalDocuments\Provide\ProvideDocument
Definition:
ProvideDocument.php:45
ILIAS\LegalDocuments\Provide\ProvideWithdrawal
Definition:
ProvideWithdrawal.php:29
ILIAS\LegalDocuments\LazyProvide\document
document()
Definition:
LazyProvide.php:57
ProvideWithdrawal
ILIAS\LegalDocuments\LazyProvide\history
history()
Definition:
LazyProvide.php:62
ILIAS\LegalDocuments\ConsumerSlots\PublicApi
Definition:
PublicApi.php:25
components
ILIAS
LegalDocuments
classes
LazyProvide.php
Generated on Mon Sep 1 2025 23:03:23 for ILIAS by
1.8.13 (using
Doxyfile
)