ILIAS  trunk Revision v11.0_alpha-1769-g99a433fe2dc
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilObjectCoreProperties Class Reference
+ Collaboration diagram for ilObjectCoreProperties:

Public Member Functions

 __construct (private ilObjectPropertyTitleAndDescription $property_title_and_description, private ilObjectPropertyIsOnline $property_is_online, private ilObjectPropertyTileImage $property_tile_image, ?array $data=null)
 
 getObjectId ()
 
 getType ()
 
 withType (?string $type)
 
 getOwner ()
 
 withOwner (int $owner)
 
 getCreateDate ()
 
 getLastUpdateDate ()
 
 getImportId ()
 
 withImportId (string $import_id)
 
 getPropertyTitleAndDescription ()
 
 withPropertyTitleAndDescription (ilObjectPropertyTitleAndDescription $property_title_and_description)
 
 getPropertyIsOnline ()
 
 withPropertyIsOnline (ilObjectPropertyIsOnline $property_is_online)
 
 getPropertyTileImage ()
 
 withPropertyTileImage (ilObjectPropertyTileImage $property_tile_image)
 

Protected Member Functions

 checkDataArray (?array $data)
 
 setValuesByArray (array $data)
 
 checkTypesOfDataArray (array $data)
 

Private Attributes

const FIELDS
 
const int $object_id = null
 
string $type = null
 
int $owner = null
 
DateTimeImmutable $create_date = null
 
DateTimeImmutable $update_date = null
 
string $import_id = ''
 

Detailed Description

Author
Stephan Kergomard

Definition at line 26 of file ilObjectCoreProperties.php.

Constructor & Destructor Documentation

◆ __construct()

ilObjectCoreProperties::__construct ( private ilObjectPropertyTitleAndDescription  $property_title_and_description,
private ilObjectPropertyIsOnline  $property_is_online,
private ilObjectPropertyTileImage  $property_tile_image,
?array  $data = null 
)
Parameters
array<mixed>$data

Definition at line 47 of file ilObjectCoreProperties.php.

References $data, checkDataArray(), and setValuesByArray().

52  {
53  if ($this->checkDataArray($data)) {
54  $this->setValuesByArray($data);
55  }
56  }
+ Here is the call graph for this function:

Member Function Documentation

◆ checkDataArray()

ilObjectCoreProperties::checkDataArray ( ?array  $data)
protected
Parameters
array<mixed>$data

Definition at line 150 of file ilObjectCoreProperties.php.

References checkTypesOfDataArray(), and null.

Referenced by __construct().

150  : bool
151  {
152  if ($data === null) {
153  return false;
154  }
155 
156  if (array_diff_key(self::FIELDS, $data)
157  || array_diff_key($data, self::FIELDS)) {
158  return false;
159  }
160 
161  if ($data['object_id'] === null || $data['owner'] === null) {
162  return false;
163  }
164 
165  if (!is_int($data['object_id']) || !is_int($data['owner'])) {
166  return false;
167  }
168 
169  return $this->checkTypesOfDataArray($data);
170  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checkTypesOfDataArray()

ilObjectCoreProperties::checkTypesOfDataArray ( array  $data)
protected

Definition at line 183 of file ilObjectCoreProperties.php.

References null.

Referenced by checkDataArray().

183  : bool
184  {
185  foreach (self::FIELDS as $key => $value) {
186  if ($data[$key] === null) {
187  continue;
188  }
189  if ($value === 'int' && !is_int($data[$key])) {
190  return false;
191  }
192  if ($value === 'text' && !is_string($data[$key])) {
193  return false;
194  }
195  if ($value === 'bool' && !is_bool($data[$key])) {
196  return false;
197  }
198  if ($value === 'DateTimeImmutable' && !$data[$key] instanceof DateTimeImmutable) {
199  return false;
200  }
201  }
202  return true;
203  }
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
+ Here is the caller graph for this function:

◆ getCreateDate()

ilObjectCoreProperties::getCreateDate ( )

Definition at line 87 of file ilObjectCoreProperties.php.

References $create_date.

Referenced by ilObjectCorePropertiesCachedRepository\store().

88  {
89  return $this->create_date;
90  }
+ Here is the caller graph for this function:

◆ getImportId()

ilObjectCoreProperties::getImportId ( )

Definition at line 97 of file ilObjectCoreProperties.php.

Referenced by ilObjectCorePropertiesCachedRepository\store().

97  : string
98  {
99  return $this->import_id ?? '';
100  }
+ Here is the caller graph for this function:

◆ getLastUpdateDate()

ilObjectCoreProperties::getLastUpdateDate ( )

Definition at line 92 of file ilObjectCoreProperties.php.

References $update_date.

93  {
94  return $this->update_date;
95  }

◆ getObjectId()

ilObjectCoreProperties::getObjectId ( )

Definition at line 58 of file ilObjectCoreProperties.php.

References $object_id.

Referenced by ilObjectCorePropertiesCachedRepository\store().

58  : ?int
59  {
60  return $this->object_id;
61  }
+ Here is the caller graph for this function:

◆ getOwner()

ilObjectCoreProperties::getOwner ( )

Definition at line 75 of file ilObjectCoreProperties.php.

References $owner.

Referenced by ilObjectCorePropertiesCachedRepository\store().

75  : ?int
76  {
77  return $this->owner;
78  }
+ Here is the caller graph for this function:

◆ getPropertyIsOnline()

ilObjectCoreProperties::getPropertyIsOnline ( )

Definition at line 121 of file ilObjectCoreProperties.php.

Referenced by ilObjectCorePropertiesCachedRepository\store().

122  {
123  return $this->property_is_online;
124  }
+ Here is the caller graph for this function:

◆ getPropertyTileImage()

ilObjectCoreProperties::getPropertyTileImage ( )

Definition at line 133 of file ilObjectCoreProperties.php.

Referenced by ilObjectCorePropertiesCachedRepository\store().

+ Here is the caller graph for this function:

◆ getPropertyTitleAndDescription()

ilObjectCoreProperties::getPropertyTitleAndDescription ( )

Definition at line 109 of file ilObjectCoreProperties.php.

Referenced by ilObjectCorePropertiesCachedRepository\store().

110  {
111  return $this->property_title_and_description;
112  }
+ Here is the caller graph for this function:

◆ getType()

ilObjectCoreProperties::getType ( )

Definition at line 63 of file ilObjectCoreProperties.php.

References $type.

Referenced by ilObjectCorePropertiesCachedRepository\store().

63  : ?string
64  {
65  return $this->type;
66  }
+ Here is the caller graph for this function:

◆ setValuesByArray()

ilObjectCoreProperties::setValuesByArray ( array  $data)
protected
Parameters
array<mixed>$data

Definition at line 176 of file ilObjectCoreProperties.php.

Referenced by __construct().

176  : void
177  {
178  foreach ($data as $key => $value) {
179  $this->$key = $value;
180  }
181  }
+ Here is the caller graph for this function:

◆ withImportId()

ilObjectCoreProperties::withImportId ( string  $import_id)

Definition at line 102 of file ilObjectCoreProperties.php.

References $import_id.

102  : self
103  {
104  $clone = clone $this;
105  $clone->import_id = $import_id;
106  return $clone;
107  }

◆ withOwner()

ilObjectCoreProperties::withOwner ( int  $owner)

Definition at line 80 of file ilObjectCoreProperties.php.

References $owner.

80  : self
81  {
82  $clone = clone $this;
83  $clone->owner = $owner;
84  return $clone;
85  }

◆ withPropertyIsOnline()

ilObjectCoreProperties::withPropertyIsOnline ( ilObjectPropertyIsOnline  $property_is_online)

Definition at line 126 of file ilObjectCoreProperties.php.

126  : self
127  {
128  $clone = clone $this;
129  $clone->property_is_online = $property_is_online;
130  return $clone;
131  }

◆ withPropertyTileImage()

ilObjectCoreProperties::withPropertyTileImage ( ilObjectPropertyTileImage  $property_tile_image)

Definition at line 138 of file ilObjectCoreProperties.php.

Referenced by ilObjectCorePropertiesCachedRepository\store().

138  : self
139  {
140  $clone = clone $this;
141  $clone->property_tile_image = $property_tile_image;
142  return $clone;
143  }
+ Here is the caller graph for this function:

◆ withPropertyTitleAndDescription()

ilObjectCoreProperties::withPropertyTitleAndDescription ( ilObjectPropertyTitleAndDescription  $property_title_and_description)

Definition at line 114 of file ilObjectCoreProperties.php.

114  : self
115  {
116  $clone = clone $this;
117  $clone->property_title_and_description = $property_title_and_description;
118  return $clone;
119  }

◆ withType()

ilObjectCoreProperties::withType ( ?string  $type)

Definition at line 68 of file ilObjectCoreProperties.php.

References $type.

Referenced by ilObjectCorePropertiesCachedRepository\getDefaultCoreProperties().

68  : self
69  {
70  $clone = clone $this;
71  $clone->type = $type;
72  return $clone;
73  }
+ Here is the caller graph for this function:

Field Documentation

◆ $create_date

DateTimeImmutable ilObjectCoreProperties::$create_date = null
private

Definition at line 39 of file ilObjectCoreProperties.php.

Referenced by getCreateDate().

◆ $import_id

string ilObjectCoreProperties::$import_id = ''
private

Definition at line 41 of file ilObjectCoreProperties.php.

Referenced by withImportId().

◆ $object_id

const int ilObjectCoreProperties::$object_id = null
private

Definition at line 36 of file ilObjectCoreProperties.php.

Referenced by getObjectId().

◆ $owner

int ilObjectCoreProperties::$owner = null
private

Definition at line 38 of file ilObjectCoreProperties.php.

Referenced by getOwner(), and withOwner().

◆ $type

string ilObjectCoreProperties::$type = null
private

Definition at line 37 of file ilObjectCoreProperties.php.

Referenced by getType(), and withType().

◆ $update_date

DateTimeImmutable ilObjectCoreProperties::$update_date = null
private

Definition at line 40 of file ilObjectCoreProperties.php.

Referenced by getLastUpdateDate().

◆ FIELDS

const ilObjectCoreProperties::FIELDS
private
Initial value:
= [
'object_id' => 'int'

Definition at line 28 of file ilObjectCoreProperties.php.


The documentation for this class was generated from the following file: