$entity_id =
$this->pluginDefinition
['metadata'
]['entity_id'
];
// Make sure the current ID is in the list, since each plugin empties
// the list after calling loadMultiple(). Note that the list may include
// multiple IDs added earlier in each plugin's constructor.
static::
$entityIdsToLoad[$entity_id] =
$entity_id;
$entities =
$storage->
loadMultiple(array_values(static::
$entityIdsToLoad));
$entity =
$entities[$entity_id] ?? NULL;
static::
$entityIdsToLoad =
[];
} if (!
$entity) { // Fallback to the loading by the UUID.
$uuid =
$this->
getUuid();
$entity =
$this->entityRepository->
loadEntityByUuid('menu_link_content',
$uuid);
} if (!
$entity) { throw new PluginException("Entity not found through the menu link plugin definition and could not fallback on UUID '
$uuid'"
);
} // Clone the entity object to avoid tampering with the static cache.
$this->entity =
clone $entity;
$the_entity =
$this->entityRepository->
getTranslationFromContext($this->entity
);
/** @var \Drupal\menu_link_content\MenuLinkContentInterface $the_entity */
$this->entity =
$the_entity;
$this->entity->
setInsidePlugin();
}