@Override public boolean isSingleton(Class<?> type, String name) throws NoSuchBeanException { BeanDefinition bd = findBeanDefinition(type,name); if(null == bd){ throw new NoSuchBeanException("No bean named '" + name + "' for type '" + type.getName() + "'"); } return bd.isSingleton(); }
@Override public boolean isSingleton(String beanId) throws NoSuchBeanException{ BeanDefinition bd = findBeanDefinition(beanId); if(null == bd){ throw new NoSuchBeanException("Bean '" + beanId + "' not found"); } return bd.isSingleton(); }
protected Object doGetBeanReferenceInstance(BeanReference br){ BeanDefinitionBase referenced = findBeanDefinition(br); if(referenced == null){ throw new BeanDefinitionException("The referenced bean not exists : " + br); } br.setTargetBeanDefinition(referenced); Object bean = doGetBean(referenced); if(null == bean) { throw new BeanCreationException("The referenced bean '" + referenced + "' not exists!"); } return bean; }
protected void checkAfterLoading(){ for(AliasDefinition aliasDefinition : bds.aliasDefinitions.values()){ if(!Strings.isEmpty(aliasDefinition.getId())){ if(null == findBeanDefinition(aliasDefinition.getId())){ throw new BeanDefinitionException("bean id '" + aliasDefinition.getId() + "' defined in alias '" + aliasDefinition.getAlias() + "' not found, source : " + BeanDefinitionBase bean = findBeanDefinition(aliasDefinition.getAlias()); if(null != bean){ throw new BeanDefinitionException("the alias name '" + aliasDefinition.getAlias() + if(null == findBeanDefinition(aliasDefinition.getType(),aliasDefinition.getName())){ throw new BeanDefinitionException("Bean name '" + aliasDefinition.getName() + "' defined in alias '" + aliasDefinition.getAlias() + "' not found, source : " + BeanDefinitionBase bean = findBeanDefinition(aliasDefinition.getType(),aliasDefinition.getAlias()); if(null != bean){ throw new BeanDefinitionException("The alias name '" + aliasDefinition.getAlias() +
protected BeanDefinitionBase findBeanDefinition(BeanReference br){ if(Strings.isNotEmpty(br.getTargetId())){ return findBeanDefinition(br.getTargetId()); } if(Strings.isEmpty(br.getBeanName())) { return findPrimaryBeanDefinition(br.getBeanType()); }else{ return findBeanOrAliasDefinition(br.getBeanType(),br.getBeanName()); } }