public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException { if (!registry.containsBeanDefinition(beanName)) { return; } BeanDefinition beanDefinition = registry.getBeanDefinition(beanName); beanDefinition.setLazyInit(true); }
protected void applyListenerScope(String beanName, BeanDefinitionRegistry beanDefinitionRegistry) { BeanDefinition beanDefinition = getListenerBeanDefinition(beanName, beanDefinitionRegistry); beanDefinition.setScope(getListenerScope()); beanDefinition.setLazyInit(isLazyInit()); if (!beanDefinitionRegistry.containsBeanDefinition(beanName)) { beanDefinitionRegistry.registerBeanDefinition(beanName, beanDefinition); } }
public void visitBeanDefinition(BeanDefinition beanDefinition) { String beanClassName = beanDefinition.getBeanClassName(); if(StepFactoryBean.class.getName().equals(beanClassName)) { PropertyValue [] values = beanDefinition.getPropertyValues().getPropertyValues(); for (PropertyValue propertyValue : values) { if(propertyValue.getName().equalsIgnoreCase("partitionReducer")) { RuntimeBeanReference ref = (RuntimeBeanReference) propertyValue.getValue(); beanFactory.getBeanDefinition(ref.getBeanName()).setLazyInit(true); } } } if(JsrPartitionHandler.class.getName().equals(beanClassName)) { PropertyValue [] values = beanDefinition.getPropertyValues().getPropertyValues(); for (PropertyValue propertyValue : values) { String propertyName = propertyValue.getName(); if(propertyName.equalsIgnoreCase("partitionMapper") || propertyName.equalsIgnoreCase("partitionAnalyzer")) { RuntimeBeanReference ref = (RuntimeBeanReference) propertyValue.getValue(); beanFactory.getBeanDefinition(ref.getBeanName()).setLazyInit(true); } } } } }
@Test public void individualBeanWithSupplierAndCustomizer() { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); context.registerBean(BeanA.class, () -> new BeanA(context.getBean(BeanB.class), context.getBean(BeanC.class)), bd -> bd.setLazyInit(true)); context.registerBean(BeanB.class, BeanB::new); context.registerBean(BeanC.class, BeanC::new); context.refresh(); assertFalse(context.getBeanFactory().containsSingleton("annotationConfigApplicationContextTests.BeanA")); assertSame(context.getBean(BeanB.class), context.getBean(BeanA.class).b); assertSame(context.getBean(BeanC.class), context.getBean(BeanA.class).c); assertSame(context, context.getBean(BeanB.class).applicationContext); }
@Test public void individualNamedBeanWithSupplierAndCustomizer() { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); context.registerBean("a", BeanA.class, () -> new BeanA(context.getBean(BeanB.class), context.getBean(BeanC.class)), bd -> bd.setLazyInit(true)); context.registerBean("b", BeanB.class, BeanB::new); context.registerBean("c", BeanC.class, BeanC::new); context.refresh(); assertFalse(context.getBeanFactory().containsSingleton("a")); assertSame(context.getBean("b", BeanB.class), context.getBean(BeanA.class).b); assertSame(context.getBean("c"), context.getBean("a", BeanA.class).c); assertSame(context, context.getBean("b", BeanB.class).applicationContext); }
@Test public void individualBeanWithFactoryBeanSupplier() { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(); context.registerBean("fb", TypedFactoryBean.class, TypedFactoryBean::new, bd -> bd.setLazyInit(true)); context.refresh(); assertEquals(String.class, context.getType("fb")); assertEquals(TypedFactoryBean.class, context.getType("&fb")); }
@Test public void individualBeanWithSupplierAndCustomizer() { GenericApplicationContext context = new GenericApplicationContext(); context.registerBean(BeanA.class, () -> new BeanA(context.getBean(BeanB.class), context.getBean(BeanC.class)), bd -> bd.setLazyInit(true)); context.registerBean(BeanB.class, BeanB::new); context.registerBean(BeanC.class, BeanC::new); context.refresh(); assertFalse(context.getBeanFactory().containsSingleton(BeanA.class.getName())); assertSame(context.getBean(BeanB.class), context.getBean(BeanA.class).b); assertSame(context.getBean(BeanC.class), context.getBean(BeanA.class).c); assertSame(context, context.getBean(BeanB.class).applicationContext); }
public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException { if (!registry.containsBeanDefinition(beanName)) { return; } BeanDefinition beanDefinition = registry.getBeanDefinition(beanName); beanDefinition.setLazyInit(true); }
@Test public void individualNamedBeanWithSupplierAndCustomizer() { GenericApplicationContext context = new GenericApplicationContext(); context.registerBean("a", BeanA.class, () -> new BeanA(context.getBean(BeanB.class), context.getBean(BeanC.class)), bd -> bd.setLazyInit(true)); context.registerBean("b", BeanB.class, BeanB::new); context.registerBean("c", BeanC.class, BeanC::new); context.refresh(); assertFalse(context.getBeanFactory().containsSingleton("a")); assertSame(context.getBean("b", BeanB.class), context.getBean(BeanA.class).b); assertSame(context.getBean("c"), context.getBean("a", BeanA.class).c); assertSame(context, context.getBean("b", BeanB.class).applicationContext); }
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { for (String beanName : beanFactory.getBeanDefinitionNames()) { if (lazyBeanNames.contains(beanName)){ beanFactory.getBeanDefinition(beanName).setLazyInit(true); } } } }
@Override public void postProcessBeanDefinitionRegistry( BeanDefinitionRegistry registry ) throws BeansException { BeanDefinition beanDefinition = registry.getBeanDefinition( "acrossContext" ); beanDefinition.setLazyInit( true ); }
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { for (String beanName : beanFactory.getBeanDefinitionNames()) { beanFactory.getBeanDefinition(beanName).setLazyInit(false); } } }
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { for (String beanName : beanFactory.getBeanDefinitionNames()) { beanFactory.getBeanDefinition(beanName).setLazyInit(true); } } }
public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException { if (!registry.containsBeanDefinition(beanName)) { return; } BeanDefinition beanDefinition = registry.getBeanDefinition(beanName); beanDefinition.setLazyInit(true); }
public class LazyInitBeanFactoryPostProcessor implements BeanFactoryPostProcessor { public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { String[] beanNames = beanFactory.getBeanDefinitionNames(); for (String beanName : beanNames) { BeanDefinition bd = beanFactory.getBeanDefinition(beanName); bd.setLazyInit(true); } } }
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { for (String beanName : beanFactory.getBeanDefinitionNames()) { if (lazyBeanNames.contains(beanName)){ beanFactory.getBeanDefinition(beanName).setLazyInit(true); } } } }
@Override public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { // Iterate over all bean, mark them as lazy if they are not in the exclusion list. for (String beanName : beanFactory.getBeanDefinitionNames()) { if (isLazy(beanName, beanFactory)) { BeanDefinition definition = beanFactory.getBeanDefinition(beanName); definition.setLazyInit(true); } } }
@Override public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { // Iterate over all beans, mark them as lazy if they are not in the exclusion list. for (String beanName : beanFactory.getBeanDefinitionNames()) { if (isLazy(beanName, beanFactory)) { BeanDefinition definition = beanFactory.getBeanDefinition(beanName); definition.setLazyInit(true); } } }
protected void applyListenerScope(String beanName, BeanDefinitionRegistry beanDefinitionRegistry) { BeanDefinition beanDefinition = getListenerBeanDefinition(beanName, beanDefinitionRegistry); beanDefinition.setScope(getListenerScope()); beanDefinition.setLazyInit(isLazyInit()); if (!beanDefinitionRegistry.containsBeanDefinition(beanName)) { beanDefinitionRegistry.registerBeanDefinition(beanName, beanDefinition); } }
protected void applyListenerScope(String beanName, BeanDefinitionRegistry beanDefinitionRegistry) { BeanDefinition beanDefinition = getListenerBeanDefinition(beanName, beanDefinitionRegistry); beanDefinition.setScope(getListenerScope()); beanDefinition.setLazyInit(isLazyInit()); if (!beanDefinitionRegistry.containsBeanDefinition(beanName)) { beanDefinitionRegistry.registerBeanDefinition(beanName, beanDefinition); } }