59 $this->identifier = $fileData[
'identifier'] ??
null;
60 $this->name = $fileData[
'name'] ??
'';
61 $this->properties = $fileData;
63 if (!empty($metaData)) {
64 $this->metaDataLoaded =
true;
65 $this->metaDataProperties = $metaData;
80 if (parent::hasProperty($key)) {
81 return parent::getProperty($key);
84 return $metaData[$key] ??
null;
96 if (!parent::hasProperty($key)) {
109 return array_merge(parent::getProperties(), array_diff_key($this->
_getMetaData(), parent::getProperties()));
120 if (!$this->metaDataLoaded) {
146 if (empty($this->properties[
'sha1'])) {
147 $this->properties[
'sha1'] = parent::getSha1();
149 return $this->properties[
'sha1'];
182 if (!$this->indexingInProgress) {
183 $this->indexingInProgress =
true;
185 $this->metaDataLoaded =
true;
186 $this->indexingInProgress =
false;
213 if (isset(
$properties[
'uid']) && $this->properties[
'uid'] != 0) {
217 if ($this->properties[$key] !== $value) {
218 if (!in_array($key, $this->updatedProperties)) {
219 $this->updatedProperties[] = $key;
221 $this->properties[$key] = $value;
225 if (array_key_exists(
'mime_type',
$properties) && in_array(
'mime_type', $this->updatedProperties)) {
226 $this->updatedProperties[] =
'type';
227 unset($this->properties[
'type']);
230 if (array_key_exists(
'storage',
$properties) && in_array(
'storage', $this->updatedProperties)) {
244 $this->metaDataProperties = array_merge($this->metaDataProperties,
$properties);
286 $GLOBALS[
'TYPO3_CONF_VARS'][
'SYS'][
'encryptionKey']
297 public function process($taskType, array $configuration)
327 foreach ($this->properties as $key => $value) {
328 $array[$key] = $value;
331 foreach ($stat as $key => $value) {
332 $array[$key] = $value;
364 public function getPublicUrl($relativeToCurrentScript =
false)
377 return GeneralUtility::makeInstance(Index\MetaDataRepository::class);
385 return GeneralUtility::makeInstance(Index\FileIndexRepository::class);
394 $this->indexingInProgress = (bool)$indexingState;
404 return parent::getProperty($key);