diff --git a/src/JsonLd/Serializer/ItemNormalizer.php b/src/JsonLd/Serializer/ItemNormalizer.php index 7da1e54a21..888fa9e505 100644 --- a/src/JsonLd/Serializer/ItemNormalizer.php +++ b/src/JsonLd/Serializer/ItemNormalizer.php @@ -110,7 +110,8 @@ public function normalize(mixed $data, ?string $format = null, array $context = // TODO: we should not remove the resource_class in the normalizeRawCollection as we would find out anyway that it's not the same as the requested one $previousResourceClass = $context['resource_class'] ?? null; $metadata = []; - if ($isResourceClass = $this->resourceClassResolver->isResourceClass($resourceClass) && (null === $previousResourceClass || $this->resourceClassResolver->isResourceClass($previousResourceClass))) { + $isResourceClass = $this->resourceClassResolver->isResourceClass($resourceClass); + if ($isResourceClass && (null === $previousResourceClass || $this->resourceClassResolver->isResourceClass($previousResourceClass))) { $resourceClass = $this->resourceClassResolver->getResourceClass($data, $previousResourceClass); if (isset($context['operation']) && $context['operation'] instanceof HttpOperation && $context['operation']->getClass() !== $resourceClass) { $context['operation'] = $this->resourceMetadataCollectionFactory->create($resourceClass)->getOperation(null, false, true); @@ -126,7 +127,7 @@ public function normalize(mixed $data, ?string $format = null, array $context = if (isset($context['item_uri_template']) && $this->operationMetadataFactory) { $context['output']['operation'] = $this->operationMetadataFactory->create($context['item_uri_template']); - } elseif ($this->resourceClassResolver->isResourceClass($resourceClass)) { + } elseif ($isResourceClass) { $context['output']['operation'] = $this->resourceMetadataCollectionFactory->create($resourceClass)->getOperation(); }