ILIAS
trunk Revision v12.0_alpha-16-g3e876e53c80
◀ ilDoc Overview
ShortlinkDTO.php
Go to the documentation of this file.
1
<?php
2
19
declare(strict_types=1);
20
21
namespace
ILIAS\StaticURL\Shortlinks\Shortlink
;
22
23
use
ILIAS\StaticURL\Shortlinks\Shortlink\Target\Type
;
24
use
ILIAS\StaticURL\Shortlinks\Shortlink\Target\TypeData
;
25
29
class
ShortlinkDTO
implements
Shortlink
30
{
31
public
function
__construct
(
32
private
string
$alias,
33
private
Type
$target_type,
34
private
TypeData
$target_type_data,
35
private
int
$position,
36
private
bool
$active,
37
private
int
$used,
38
private
?
string
$id
=
null
39
) {
40
}
41
42
public
function
withId
(
string
$id
):
Shortlink
43
{
44
$clone = clone $this;
45
$clone->id =
$id
;
46
return
$clone;
47
}
48
49
public
function
getId
(): ?string
50
{
51
return
$this->id
;
52
}
53
54
public
function
withAlias
(
string
$alias):
Shortlink
55
{
56
$clone = clone $this;
57
$clone->alias = $alias;
58
return
$clone;
59
}
60
61
public
function
getAlias
(): string
62
{
63
return
$this->alias;
64
}
65
66
public
function
getAliasForPresentation
(
string
$prefix =
''
): string
67
{
68
return
rtrim($prefix,
'/'
) .
'/'
. trim($this->alias,
'/'
);
69
}
70
71
public
function
withTargetType
():
Type
72
{
73
$clone = clone $this;
74
$clone->target_type = $target_type;
75
return
$clone;
76
}
77
78
public
function
getTargetType
():
Type
79
{
80
return
$this->target_type;
81
}
82
83
public
function
withTargetData
(
TypeData
$data
):
Shortlink
84
{
85
$clone = clone $this;
86
$clone->target_type_data =
$data
;
87
return
$clone;
88
}
89
90
public
function
getTargetData
():
TypeData
91
{
92
return
$this->target_type_data;
93
}
94
95
public
function
withPosition
(
int
$position):
Shortlink
96
{
97
$clone = clone $this;
98
$clone->position = $position;
99
return
$clone;
100
}
101
102
public
function
getPosition
():
int
103
{
104
return
$this->position;
105
}
106
107
public
function
withActive
(
bool
$active):
Shortlink
108
{
109
$clone = clone $this;
110
$clone->active = $active;
111
return
$clone;
112
}
113
114
public
function
isActive
(): bool
115
{
116
return
$this->active;
117
}
118
119
public
function
increaseUsage
():
Shortlink
120
{
121
$clone = clone $this;
122
$clone->used++;
123
return
$clone;
124
}
125
126
public
function
getUsed
():
int
127
{
128
return
$this->used;
129
}
130
131
}
$id
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition:
plugin.php:23
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO
Definition:
ShortlinkDTO.php:30
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getAlias
getAlias()
Definition:
ShortlinkDTO.php:61
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getId
getId()
Definition:
ShortlinkDTO.php:49
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getTargetData
getTargetData()
Definition:
ShortlinkDTO.php:90
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getTargetType
getTargetType()
Definition:
ShortlinkDTO.php:78
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getAliasForPresentation
getAliasForPresentation(string $prefix='')
Definition:
ShortlinkDTO.php:66
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\withTargetType
withTargetType()
Definition:
ShortlinkDTO.php:71
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\withPosition
withPosition(int $position)
Definition:
ShortlinkDTO.php:95
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\increaseUsage
increaseUsage()
Definition:
ShortlinkDTO.php:119
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\isActive
isActive()
Definition:
ShortlinkDTO.php:114
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\__construct
__construct(private string $alias, private Type $target_type, private TypeData $target_type_data, private int $position, private bool $active, private int $used, private ?string $id=null)
Definition:
ShortlinkDTO.php:31
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getUsed
getUsed()
Definition:
ShortlinkDTO.php:126
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\withId
withId(string $id)
Definition:
ShortlinkDTO.php:42
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\getPosition
getPosition()
Definition:
ShortlinkDTO.php:102
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\withActive
withActive(bool $active)
Definition:
ShortlinkDTO.php:107
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\withAlias
withAlias(string $alias)
Definition:
ShortlinkDTO.php:54
ILIAS\StaticURL\Shortlinks\Shortlink\ShortlinkDTO\withTargetData
withTargetData(TypeData $data)
Definition:
ShortlinkDTO.php:83
ILIAS\StaticURL\Shortlinks\Shortlink\Target\TypeData
Definition:
TypeData.php:28
ILIAS\StaticURL\Shortlinks\Shortlink\Shortlink
Definition:
Shortlink.php:30
$data
$data
Definition:
ltiregistration.php:29
ILIAS\AdvancedMetaData\Data\FieldDefinition\Type
Type
Definition:
Type.php:24
ILIAS\Repository\int
int(string $key)
Definition:
trait.BaseGUIRequest.php:61
ILIAS\StaticURL\Shortlinks\Shortlink\Target\Type
Type
Definition:
Type.php:27
ILIAS\StaticURL\Shortlinks\Shortlink
Definition:
Repository.php:21
components
ILIAS
StaticURL
src
Shortlinks
Shortlink
ShortlinkDTO.php
Generated on Sun Nov 2 2025 23:04:00 for ILIAS by
1.9.4 (using
Doxyfile
)