From 0db2ae4bc39d5a7994d4c651bcbdc5fc0ce5a5cd Mon Sep 17 00:00:00 2001
From: rakeshregarinnoraft <rakesh.regar@innoraft.com>
Date: Mon, 7 Apr 2025 12:49:52 +0530
Subject: [PATCH] 3517446_6:Cached relation IDs are broken.

---
 src/LinkManager/LinkManager.php                  | 4 ++--
 src/LinkManager/RelationLinkManagerInterface.php | 4 +++-
 src/Normalizer/ContentEntityNormalizer.php       | 2 +-
 3 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/LinkManager/LinkManager.php b/src/LinkManager/LinkManager.php
index 66e68d0..c421af9 100644
--- a/src/LinkManager/LinkManager.php
+++ b/src/LinkManager/LinkManager.php
@@ -55,8 +55,8 @@ class LinkManager implements LinkManagerInterface {
   /**
    * {@inheritdoc}
    */
-  public function getRelationInternalIds($relation_uri) {
-    return $this->relationLinkManager->getRelationInternalIds($relation_uri);
+  public function getRelationInternalIds($relation_uri, $context = []) {
+    return $this->relationLinkManager->getRelationInternalIds($relation_uri, $context);
   }
 
   /**
diff --git a/src/LinkManager/RelationLinkManagerInterface.php b/src/LinkManager/RelationLinkManagerInterface.php
index 7d84894..5b0ac2c 100644
--- a/src/LinkManager/RelationLinkManagerInterface.php
+++ b/src/LinkManager/RelationLinkManagerInterface.php
@@ -30,10 +30,12 @@ interface RelationLinkManagerInterface extends ConfigurableLinkManagerInterface
    *
    * @param string $relation_uri
    *   Relation URI (or IANA link relation type) to transform into internal IDs.
+   * @param array $context
+   *   (optional) Optional serializer/normalizer context.
    *
    * @return array
    *   Array with keys 'entity_type_id', 'bundle' and 'field_name'.
    */
-  public function getRelationInternalIds($relation_uri);
+  public function getRelationInternalIds($relation_uri, $context = []);
 
 }
diff --git a/src/Normalizer/ContentEntityNormalizer.php b/src/Normalizer/ContentEntityNormalizer.php
index e7963e8..af77509 100644
--- a/src/Normalizer/ContentEntityNormalizer.php
+++ b/src/Normalizer/ContentEntityNormalizer.php
@@ -179,7 +179,7 @@ class ContentEntityNormalizer extends NormalizerBase {
 
     // Flatten the embedded values.
     foreach ($embedded as $relation => $field) {
-      $field_ids = $this->linkManager->getRelationInternalIds($relation);
+      $field_ids = $this->linkManager->getRelationInternalIds($relation, $context);
       if (!empty($field_ids)) {
         $field_name = $field_ids['field_name'];
         $data[$field_name] = $field;
-- 
GitLab