In preparation for #33414 where the arrangement requires a single FactoryBean (specifically, the JPA LocalContainerEntityManagerFactoryBean) which needs to expose qualified references of multiple types (EntityManagerFactory as well as EntityManager), the existing SmartFactoryBean contract needs to be extended with getObject(Class) and supportsType(Class) methods that the core container can call for determining supported FactoryBean object types.