org.springframework.beans.factory.support.GenericBeanDefinition#setBeanClassName ( )源码实例Demo

下面列出了org.springframework.beans.factory.support.GenericBeanDefinition#setBeanClassName ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * Convert from a DTO to an internal Spring bean definition.
 * 
 * @param beanDefinitionDto The DTO object.
 * @return Returns a Spring bean definition.
 */
public BeanDefinition toInternal(BeanDefinitionInfo beanDefinitionInfo) {
	if (beanDefinitionInfo instanceof GenericBeanDefinitionInfo) {
		GenericBeanDefinitionInfo genericInfo = (GenericBeanDefinitionInfo) beanDefinitionInfo;
		GenericBeanDefinition def = new GenericBeanDefinition();
		def.setBeanClassName(genericInfo.getClassName());
		if (genericInfo.getPropertyValues() != null) {
			MutablePropertyValues propertyValues = new MutablePropertyValues();
			for (Entry<String, BeanMetadataElementInfo> entry : genericInfo.getPropertyValues().entrySet()) {
				BeanMetadataElementInfo info = entry.getValue();
				propertyValues.add(entry.getKey(), toInternal(info));
			}
			def.setPropertyValues(propertyValues);
		}
		return def;
	} else if (beanDefinitionInfo instanceof ObjectBeanDefinitionInfo) {
		ObjectBeanDefinitionInfo objectInfo = (ObjectBeanDefinitionInfo) beanDefinitionInfo;
		return createBeanDefinitionByIntrospection(objectInfo.getObject());
	} else {
		throw new IllegalArgumentException("Conversion to internal of " + beanDefinitionInfo.getClass().getName()
				+ " not implemented");
	}
}
 
源代码2 项目: geomajas-project-server   文件: BaseBeanFactory.java
@SuppressWarnings({ "unchecked", "rawtypes" })
public List<BeanDefinitionHolder> createBeans(Map<String, Object> parameters) throws RuntimeConfigException {
	GenericBeanDefinition def = new GenericBeanDefinition();
	def.setBeanClassName(className);
	MutablePropertyValues propertyValues = new MutablePropertyValues();
	List<NamedObject> namedObjects = new ArrayList<NamedObject>();
	if (checkCollection(BEAN_REFS, NamedObject.class, parameters) != Priority.NONE) {
		namedObjects.addAll((Collection) parameters.get(BEAN_REFS));
	}
	for (String name : parameters.keySet()) {
		if (!ignoredParams.contains(name)) {
			propertyValues.addPropertyValue(name, beanDefinitionDtoConverterService
					.createBeanMetadataElementByIntrospection(parameters.get(name), namedObjects));
		}
	}
	def.setPropertyValues(propertyValues);
	BeanDefinitionHolder holder = new BeanDefinitionHolder(def, (String) parameters.get(BEAN_NAME));
	List<BeanDefinitionHolder> holders = new ArrayList<BeanDefinitionHolder>();
	holders.add(holder);
	return holders;
}
 
源代码3 项目: spring-analysis-note   文件: ImportAwareTests.java
@Override
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
	GenericBeanDefinition beanDefinition = new GenericBeanDefinition();
	beanDefinition.setBeanClassName(String.class.getName());
	registry.registerBeanDefinition("registrarImportedBean", beanDefinition);
	GenericBeanDefinition beanDefinition2 = new GenericBeanDefinition();
	beanDefinition2.setBeanClass(OtherImportedConfig.class);
	registry.registerBeanDefinition("registrarImportedConfig", beanDefinition2);
	Assert.state(!called, "ImportedRegistrar called twice");
	called = true;
}
 
源代码4 项目: java-technology-stack   文件: ImportAwareTests.java
@Override
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
	GenericBeanDefinition beanDefinition = new GenericBeanDefinition();
	beanDefinition.setBeanClassName(String.class.getName());
	registry.registerBeanDefinition("registrarImportedBean", beanDefinition);
	GenericBeanDefinition beanDefinition2 = new GenericBeanDefinition();
	beanDefinition2.setBeanClass(OtherImportedConfig.class);
	registry.registerBeanDefinition("registrarImportedConfig", beanDefinition2);
	Assert.state(!called, "ImportedRegistrar called twice");
	called = true;
}
 
/**
 * 向spring中注入dao代理
 * @param beanFactory
 */
private void registryMangoDao(DefaultListableBeanFactory beanFactory){
    for (Class<?> daoClass : findMangoDaoClasses(config.getScanPackage())) {
        GenericBeanDefinition bf = new GenericBeanDefinition();
        bf.setBeanClassName(daoClass.getName());
        MutablePropertyValues pvs = bf.getPropertyValues();
        pvs.addPropertyValue("daoClass", daoClass);
        bf.setBeanClass(factoryBeanClass);
        bf.setPropertyValues(pvs);
        bf.setLazyInit(false);
        beanFactory.registerBeanDefinition(daoClass.getName(), bf);
    }
}
 
源代码6 项目: spring4-understanding   文件: ImportAwareTests.java
@Override
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
	GenericBeanDefinition beanDefinition = new GenericBeanDefinition();
	beanDefinition.setBeanClassName(String.class.getName());
	registry.registerBeanDefinition("registrarImportedBean", beanDefinition);
	GenericBeanDefinition beanDefinition2 = new GenericBeanDefinition();
	beanDefinition2.setBeanClass(OtherImportedConfig.class);
	registry.registerBeanDefinition("registrarImportedConfig", beanDefinition2);
	Assert.state(!called, "ImportedRegistrar called twice");
	called = true;
}
 
@Bean
public BeanDefinitionHolder proxyDataSource() {
	GenericBeanDefinition proxyBeanDefinition = new GenericBeanDefinition();
	proxyBeanDefinition.setBeanClassName("javax.sql.DataSource");
	BeanDefinitionHolder myDataSource = new BeanDefinitionHolder(
			proxyBeanDefinition, "dataSource2");
	ScopedProxyUtils.createScopedProxy(myDataSource,
			(BeanDefinitionRegistry) this.context.getBeanFactory(), true);
	return myDataSource;
}
 
源代码8 项目: mango   文件: MangoDaoScanner.java
@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
  DefaultListableBeanFactory dlbf = (DefaultListableBeanFactory) beanFactory;
  for (Class<?> daoClass : findMangoDaoClasses()) {
    GenericBeanDefinition bf = new GenericBeanDefinition();
    bf.setBeanClassName(daoClass.getName());
    MutablePropertyValues pvs = bf.getPropertyValues();
    pvs.addPropertyValue("daoClass", daoClass);
    bf.setBeanClass(factoryBeanClass);
    bf.setPropertyValues(pvs);
    bf.setLazyInit(false);
    dlbf.registerBeanDefinition(daoClass.getName(), bf);
  }
}
 
/**
 * Create a ScriptFactory bean definition based on the given script definition,
 * extracting only the definition data that is relevant for the ScriptFactory
 * (that is, only bean class and constructor arguments).
 * @param bd the full script bean definition
 * @return the extracted ScriptFactory bean definition
 * @see org.springframework.scripting.ScriptFactory
 */
protected BeanDefinition createScriptFactoryBeanDefinition(BeanDefinition bd) {
	GenericBeanDefinition scriptBd = new GenericBeanDefinition();
	scriptBd.setBeanClassName(bd.getBeanClassName());
	scriptBd.getConstructorArgumentValues().addArgumentValues(bd.getConstructorArgumentValues());
	return scriptBd;
}
 
/**
 * Create a ScriptFactory bean definition based on the given script definition,
 * extracting only the definition data that is relevant for the ScriptFactory
 * (that is, only bean class and constructor arguments).
 * @param bd the full script bean definition
 * @return the extracted ScriptFactory bean definition
 * @see org.springframework.scripting.ScriptFactory
 */
protected BeanDefinition createScriptFactoryBeanDefinition(BeanDefinition bd) {
	GenericBeanDefinition scriptBd = new GenericBeanDefinition();
	scriptBd.setBeanClassName(bd.getBeanClassName());
	scriptBd.getConstructorArgumentValues().addArgumentValues(bd.getConstructorArgumentValues());
	return scriptBd;
}
 
源代码11 项目: lams   文件: ScriptFactoryPostProcessor.java
/**
 * Create a ScriptFactory bean definition based on the given script definition,
 * extracting only the definition data that is relevant for the ScriptFactory
 * (that is, only bean class and constructor arguments).
 * @param bd the full script bean definition
 * @return the extracted ScriptFactory bean definition
 * @see org.springframework.scripting.ScriptFactory
 */
protected BeanDefinition createScriptFactoryBeanDefinition(BeanDefinition bd) {
	GenericBeanDefinition scriptBd = new GenericBeanDefinition();
	scriptBd.setBeanClassName(bd.getBeanClassName());
	scriptBd.getConstructorArgumentValues().addArgumentValues(bd.getConstructorArgumentValues());
	return scriptBd;
}
 
/**
 * Create a ScriptFactory bean definition based on the given script definition,
 * extracting only the definition data that is relevant for the ScriptFactory
 * (that is, only bean class and constructor arguments).
 * @param bd the full script bean definition
 * @return the extracted ScriptFactory bean definition
 * @see org.springframework.scripting.ScriptFactory
 */
protected BeanDefinition createScriptFactoryBeanDefinition(BeanDefinition bd) {
	GenericBeanDefinition scriptBd = new GenericBeanDefinition();
	scriptBd.setBeanClassName(bd.getBeanClassName());
	scriptBd.getConstructorArgumentValues().addArgumentValues(bd.getConstructorArgumentValues());
	return scriptBd;
}