The `@Factory` `@Bean` methods are not using the `@Primary` and `@Secondary` annotations to control the priority of those beans. In addition, ideally for `@Secondary @Bean` methods we delay the invocation such that these beans are not initialized unless they are indeed wired.