entityManager = $entityManager; } public function duplicate(Entity $entity, string $field): stdClass { $valueMap = (object) []; /** @var Attachment|null $attachment */ $attachment = $this->entityManager ->getRDBRepository($entity->getEntityType()) ->getRelation($entity, $field) ->findOne(); if (!$attachment) { return $valueMap; } /** @var AttachmentRepository $attachmentRepository */ $attachmentRepository = $this->entityManager->getRepository(Attachment::ENTITY_TYPE); $copiedAttachment = $attachmentRepository->getCopiedAttachment($attachment); $idAttribute = $field . 'Id'; $valueMap->$idAttribute = $copiedAttachment->getId(); return $valueMap; } }