/** * Get ClassMetadata instance for type. Returns null if class does not exist * * @param Type $type * * @return null|ClassMetadata */ private function getMetadataForType(Type $type) { if ($metadata = $type->getMetadata()) { return $metadata; } if (!class_exists($type->getName(), false) && !interface_exists($type->getName(), false)) { return null; } $metadata = $this->metadataFactory->getMetadataFor($type->getName()); $type->setMetadata($metadata); return $metadata; }