So registrieren Sie eine Bean, wenn sie noch nicht in einem BeanDefinitionPostProcessor registriert ist

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: So registrieren Sie eine Bean, wenn sie noch nicht in einem BeanDefinitionPostProcessor registriert ist

by Anonymous » 21 Dec 2024, 02:38

Nehmen wir an, es gibt eine Schnittstelle SpecialInterface, ich habe eine BeanDefinitionPostProcessor-Implementierung:
public class MyBeanDefPostProcessor
implements BeanDefinitionRegistryPostProcessor {

@Override
public void postProcessBeanDefinitionRegistry(
BeanDefinitionRegistry registry ) throws BeansException {

if ( this.isAlreadyRegistered(SpecialInterface.class, registry) {
// If it is not there, I want to register one
var beanDef = new RootBeanDefition();
// the rest of the values on beadDef
registry.registerBeanDefinition("SomeName", beanDef );
}
}

protected boolean isAlreadyRegistered(
Class clazz,
BeanDefinitionRegistry registry ) {
// How do I know if there is a bean already registered
// implementing that interface
}
}

Die Informationen sind vorhanden, aber nicht in der BeanDefinition-Schnittstelle.
Alle Ideen sind von Vorteil!

Top