/** * Build merge entity metadata by class * * @param string $className * @return EntityMetadata */ public function createEntityMetadataByClass($className) { $classMetadata = $this->doctrineHelper->getMetadataFor($className); $result = $this->metadataFactory->createEntityMetadata(array(), (array) $classMetadata); $this->addDoctrineFields($result, $classMetadata); $this->addDoctrineAssociations($result, $classMetadata); $this->addDoctrineInverseAssociations($result, $classMetadata, $className); $this->eventDispatcher->dispatch(MergeEvents::BUILD_METADATA, new EntityMetadataEvent($result)); return $result; }