ProductsObject::class, QuantityUnitsObject::getEntity() => QuantityUnitsObject::class, ]; } public static function denormalize($object, string $name): AbstractApiObject { // $name = (new CamelCaseToSnakeCaseNameConverter())->denormalize($name); // sprintf('%s\\%sObject', __NAMESPACE__, ucfirst($name)) return (new ObjectNormalizer())->denormalize($object, self::objectList()[$name]); } public static function normalize(AbstractApiObject $object): array { $classMetaDataFactory = new ClassMetadataFactory(new AnnotationLoader()); $serializer = new Serializer([ new ObjectNormalizer($classMetaDataFactory, new CamelCaseToSnakeCaseNameConverter()), ]); return $serializer->normalize($object); } }