当前位置: 首页>>代码示例>>Java>>正文


Java BeanFactoryUtils.transformedBeanName方法代码示例

本文整理汇总了Java中org.springframework.beans.factory.BeanFactoryUtils.transformedBeanName方法的典型用法代码示例。如果您正苦于以下问题:Java BeanFactoryUtils.transformedBeanName方法的具体用法?Java BeanFactoryUtils.transformedBeanName怎么用?Java BeanFactoryUtils.transformedBeanName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.springframework.beans.factory.BeanFactoryUtils的用法示例。


在下文中一共展示了BeanFactoryUtils.transformedBeanName方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getType

import org.springframework.beans.factory.BeanFactoryUtils; //导入方法依赖的package包/类
@Override
public Class<?> getType(String name) throws NoSuchBeanDefinitionException {
	String beanName = BeanFactoryUtils.transformedBeanName(name);

	Object bean = this.beans.get(beanName);
	if (bean == null) {
		throw new NoSuchBeanDefinitionException(beanName,
				"Defined beans are [" + StringUtils.collectionToCommaDelimitedString(this.beans.keySet()) + "]");
	}

	if (bean instanceof FactoryBean && !BeanFactoryUtils.isFactoryDereference(name)) {
		// If it's a FactoryBean, we want to look at what it creates, not the factory class.
		return ((FactoryBean<?>) bean).getObjectType();
	}
	return bean.getClass();
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:17,代码来源:StaticListableBeanFactory.java

示例2: getLifecycleBeans

import org.springframework.beans.factory.BeanFactoryUtils; //导入方法依赖的package包/类
/**
 * Retrieve all applicable Lifecycle beans: all singletons that have already been created,
 * as well as all SmartLifecycle beans (even if they are marked as lazy-init).
 * @return the Map of applicable beans, with bean names as keys and bean instances as values
 */
protected Map<String, Lifecycle> getLifecycleBeans() {
	Map<String, Lifecycle> beans = new LinkedHashMap<String, Lifecycle>();
	String[] beanNames = this.beanFactory.getBeanNamesForType(Lifecycle.class, false, false);
	for (String beanName : beanNames) {
		String beanNameToRegister = BeanFactoryUtils.transformedBeanName(beanName);
		boolean isFactoryBean = this.beanFactory.isFactoryBean(beanNameToRegister);
		String beanNameToCheck = (isFactoryBean ? BeanFactory.FACTORY_BEAN_PREFIX + beanName : beanName);
		if ((this.beanFactory.containsSingleton(beanNameToRegister) &&
				(!isFactoryBean || Lifecycle.class.isAssignableFrom(this.beanFactory.getType(beanNameToCheck)))) ||
				SmartLifecycle.class.isAssignableFrom(this.beanFactory.getType(beanNameToCheck))) {
			Lifecycle bean = this.beanFactory.getBean(beanNameToCheck, Lifecycle.class);
			if (bean != this) {
				beans.put(beanNameToRegister, bean);
			}
		}
	}
	return beans;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:24,代码来源:DefaultLifecycleProcessor.java

示例3: isAutowireCandidate

import org.springframework.beans.factory.BeanFactoryUtils; //导入方法依赖的package包/类
/**
 * Determine whether the specified bean definition qualifies as an autowire candidate,
 * to be injected into other beans which declare a dependency of matching type.
 * @param beanName the name of the bean definition to check
 * @param descriptor the descriptor of the dependency to resolve
 * @param resolver the AutowireCandidateResolver to use for the actual resolution algorithm
 * @return whether the bean should be considered as autowire candidate
 */
protected boolean isAutowireCandidate(String beanName, DependencyDescriptor descriptor, AutowireCandidateResolver resolver)
		throws NoSuchBeanDefinitionException {

	String beanDefinitionName = BeanFactoryUtils.transformedBeanName(beanName);
	if (containsBeanDefinition(beanDefinitionName)) {
		return isAutowireCandidate(beanName, getMergedLocalBeanDefinition(beanDefinitionName), descriptor, resolver);
	}
	else if (containsSingleton(beanName)) {
		return isAutowireCandidate(beanName, new RootBeanDefinition(getType(beanName)), descriptor, resolver);
	}
	else if (getParentBeanFactory() instanceof DefaultListableBeanFactory) {
		// No bean definition found in this factory -> delegate to parent.
		return ((DefaultListableBeanFactory) getParentBeanFactory()).isAutowireCandidate(beanName, descriptor, resolver);
	}
	else if (getParentBeanFactory() instanceof ConfigurableListableBeanFactory) {
		// If no DefaultListableBeanFactory, can't pass the resolver along.
		return ((ConfigurableListableBeanFactory) getParentBeanFactory()).isAutowireCandidate(beanName, descriptor);
	}
	else {
		return true;
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:31,代码来源:DefaultListableBeanFactory.java

示例4: getBean

import org.springframework.beans.factory.BeanFactoryUtils; //导入方法依赖的package包/类
@Override
public Object getBean(String name) throws BeansException {
	String beanName = BeanFactoryUtils.transformedBeanName(name);
	Object bean = this.beans.get(beanName);

	if (bean == null) {
		throw new NoSuchBeanDefinitionException(beanName,
				"Defined beans are [" + StringUtils.collectionToCommaDelimitedString(this.beans.keySet()) + "]");
	}

	// Don't let calling code try to dereference the
	// bean factory if the bean isn't a factory
	if (BeanFactoryUtils.isFactoryDereference(name) && !(bean instanceof FactoryBean)) {
		throw new BeanIsNotAFactoryException(beanName, bean.getClass());
	}

	if (bean instanceof FactoryBean && !BeanFactoryUtils.isFactoryDereference(name)) {
		try {
			return ((FactoryBean<?>) bean).getObject();
		}
		catch (Exception ex) {
			throw new BeanCreationException(beanName, "FactoryBean threw exception on object creation", ex);
		}
	}
	else {
		return bean;
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:29,代码来源:StaticListableBeanFactory.java

示例5: collectBeanNamesForTypeFromFactoryBeans

import org.springframework.beans.factory.BeanFactoryUtils; //导入方法依赖的package包/类
private void collectBeanNamesForTypeFromFactoryBeans(Set<String> result,
		ConfigurableListableBeanFactory beanFactory, Class<?> type) {
	String[] names = beanFactory.getBeanNamesForType(FactoryBean.class, true,
			false);
	for (String name : names) {
		name = BeanFactoryUtils.transformedBeanName(name);
		BeanDefinition beanDefinition = beanFactory.getBeanDefinition(name);
		Class<?> generic = getFactoryBeanGeneric(beanFactory, beanDefinition,
				name);
		if (generic != null && ClassUtils.isAssignable(type, generic)) {
			result.add(name);
		}
	}
}
 
开发者ID:vikrammane23,项目名称:https-github.com-g0t4-jenkins2-course-spring-boot,代码行数:15,代码来源:BeanTypeRegistry.java

示例6: getBeanDefinitionName

import org.springframework.beans.factory.BeanFactoryUtils; //导入方法依赖的package包/类
public static String getBeanDefinitionName(String beanName) {
	return BeanFactoryUtils.transformedBeanName(beanName);
}
 
开发者ID:pchudzik,项目名称:springmock,代码行数:4,代码来源:FactoryBeanRecognizer.java


注:本文中的org.springframework.beans.factory.BeanFactoryUtils.transformedBeanName方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。