sharedInstance = getSingleton(beanName, () -> { try { return createBean(beanName, mbd, args); try { beforePrototypeCreation(beanName); prototypeInstance = createBean(beanName, mbd, args); beforePrototypeCreation(beanName); try { return createBean(beanName, mbd, args);
Object innerBean = this.beanFactory.createBean(actualInnerBeanName, mbd, null); if (innerBean instanceof FactoryBean) { boolean synthetic = mbd.isSynthetic();
sharedInstance = getSingleton(beanName, () -> { try { return createBean(beanName, mbd, args); try { beforePrototypeCreation(beanName); prototypeInstance = createBean(beanName, mbd, args); beforePrototypeCreation(beanName); try { return createBean(beanName, mbd, args);
Object innerBean = this.beanFactory.createBean(actualInnerBeanName, mbd, null); if (innerBean instanceof FactoryBean) { boolean synthetic = mbd.isSynthetic();
public Object getObject() throws BeansException { try { return createBean(beanName, mbd, args); } catch (BeansException ex) { // Explicitly remove instance from singleton cache: It might have been put there // eagerly by the creation process, to allow for circular reference resolution. // Also remove any beans that received a temporary reference to the bean. destroySingleton(beanName); throw ex; } } });
public Object getObject() throws BeansException { beforePrototypeCreation(beanName); try { return createBean(beanName, mbd, args); } finally { afterPrototypeCreation(beanName); } } });
try { beforePrototypeCreation(beanName); prototypeInstance = createBean(beanName, mbd, args);
Object innerBean = this.beanFactory.createBean(actualInnerBeanName, mbd, null); this.beanFactory.registerContainedBean(actualInnerBeanName, this.beanName); if (innerBean instanceof FactoryBean) {
/** * Resolve an inner bean definition. */ private Object resolveInnerBeanDefinition(String innerBeanName, BeanDefinition innerBd) throws BeansException { if (logger.isDebugEnabled()) { logger.debug("Resolving inner bean definition '" + innerBeanName + "' of bean '" + this.beanName + "'"); } RootBeanDefinition mergedInnerBd = this.beanFactory.getMergedBeanDefinition(innerBeanName, innerBd); Object innerBean = this.beanFactory.createBean(innerBeanName, mergedInnerBd, null); if (mergedInnerBd.isSingleton()) { this.beanFactory.registerDependentBean(innerBeanName, this.beanName); } return this.beanFactory.getObjectForSharedInstance(innerBeanName, innerBean); }
sharedInstance = createBean(beanName, mergedBeanDefinition, args); this.singletonCache.put(beanName, sharedInstance); bean = createBean(name, mergedBeanDefinition, args);
try { beforePrototypeCreation(beanName); prototypeInstance = createBean(beanName, mbd, args);
Object innerBean = this.beanFactory.createBean(actualInnerBeanName, mbd, null); if (innerBean instanceof FactoryBean) { boolean synthetic = mbd.isSynthetic();