public function FileUrlFieldItemList::referencedEntities in File URL 2.0.x
Same name and namespace in other branches
- 8 src/Plugin/Field/FieldType/FileUrlFieldItemList.php \Drupal\file_url\Plugin\Field\FieldType\FileUrlFieldItemList::referencedEntities()
Gets the entities referenced by this field, preserving field item deltas.
Return value
\Drupal\Core\Entity\EntityInterface[] An array of entity objects keyed by field item deltas.
Overrides EntityReferenceFieldItemList::referencedEntities
3 calls to FileUrlFieldItemList::referencedEntities()
- FileUrlFieldItemList::delete in src/
Plugin/ Field/ FieldType/ FileUrlFieldItemList.php - Defines custom delete behavior for field values.
- FileUrlFieldItemList::deleteRevision in src/
Plugin/ Field/ FieldType/ FileUrlFieldItemList.php - Defines custom revision delete behavior for field values.
- FileUrlFieldItemList::postSave in src/
Plugin/ Field/ FieldType/ FileUrlFieldItemList.php - Defines custom post-save behavior for field values.
File
- src/
Plugin/ Field/ FieldType/ FileUrlFieldItemList.php, line 112
Class
- FileUrlFieldItemList
- Represents a configurable entity file URL field.
Namespace
Drupal\file_url\Plugin\Field\FieldTypeCode
public function referencedEntities() {
/** @var \Drupal\file_url\FileUrlHandler $file_handler */
$file_handler = \Drupal::service('file_url.handler');
if (empty($this->list)) {
return [];
}
// Collect the IDs of existing entities to load, and directly grab the
// "autocreate" entities that are already populated in $item->entity.
$target_entities = [];
foreach ($this->list as $delta => $item) {
if ($item->target_id !== NULL) {
$file = $file_handler::urlToFile($item->target_id);
$target_entities[$delta] = $file;
}
elseif ($item
->hasNewEntity()) {
$target_entities[$delta] = $item->entity;
}
}
// Ensure the returned array is ordered by deltas.
ksort($target_entities);
return $target_entities;
}