em = $em; } public function transform($product) { if (null === $product) { return ''; } return $product->getId(); } public function reverseTransform($productId) { if (!$productId) { return; } $product = $this->em->getRepository($this->em->getClassMetadata(ProductInterface::class)->getName())->find($productId); if (null === $product) { throw new TransformationFailedException(sprintf( 'An issue with number "%s" does not exist!', $productId )); } return $product; } }