ILIAS
trunk Revision v11.0_alpha-2662-g519ff7d528f
◀ ilDoc Overview
PersistenceTrackingDataImplementation.php
Go to the documentation of this file.
1
<?php
2
19
declare(strict_types=1);
20
21
namespace
ILIAS\AdvancedMetaData\Data
;
22
23
abstract
class
PersistenceTrackingDataImplementation
implements
PersistenceTrackingData
24
{
25
private
bool
$contains_changes
=
false
;
26
30
abstract
public
function
isPersisted
(): bool;
31
35
abstract
protected
function
getSubData
(): \
Generator
;
36
42
final
public
function
containsChanges
(): bool
43
{
44
if
(!$this->
isPersisted
() || $this->contains_changes) {
45
return
true
;
46
}
47
foreach
($this->
getSubData
() as $sub_datum) {
48
if
($sub_datum->containsChanges()) {
49
return
true
;
50
}
51
}
52
return
false
;
53
}
54
55
final
protected
function
markAsChanged
(): void
56
{
57
$this->contains_changes =
true
;
58
}
59
}
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingDataImplementation\getSubData
getSubData()
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingDataImplementation\isPersisted
isPersisted()
Is this data is already persisted?
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingDataImplementation\containsChanges
containsChanges()
Was the contained data (including sub-objects) altered with respect to what is persisted? Returns true if not persisted.
Definition:
PersistenceTrackingDataImplementation.php:42
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingData
Definition:
PersistenceTrackingData.php:25
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingDataImplementation\$contains_changes
bool $contains_changes
Definition:
PersistenceTrackingDataImplementation.php:25
Generator
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingDataImplementation\markAsChanged
markAsChanged()
Definition:
PersistenceTrackingDataImplementation.php:55
ILIAS\AdvancedMetaData\Data
Definition:
Exception.php:21
ILIAS\MetaData\Elements\Data\Data\PersistenceTrackingDataImplementation
Definition:
PersistenceTrackingDataImplementation.php:23
components
ILIAS
AdvancedMetaData
classes
Data
PersistenceTrackingDataImplementation.php
Generated on Wed Sep 3 2025 23:01:51 for ILIAS by
1.8.13 (using
Doxyfile
)