List of usage examples for org.springframework.beans.factory.support GenericBeanDefinition GenericBeanDefinition
public GenericBeanDefinition()
From source file:com.dianping.zebra.monitor.spring.DataSourceAutoMonitor.java
private BeanDefinition createMonitorableBeanDefinition(String beanName, BeanDefinition dataSourceDefinition) { if (MonitorableDataSource.class.getName().equals(dataSourceDefinition.getBeanClassName()) || GroupDataSource.class.getName().equals(dataSourceDefinition.getBeanClassName())) { return dataSourceDefinition; }//w ww . j a va 2 s .c om String newBeanName = String.format("%s-z%d", beanName, nameId++); listableBeanFactory.registerBeanDefinition(newBeanName, dataSourceDefinition); GenericBeanDefinition monitorableDataSourceDefinition = new GenericBeanDefinition(); monitorableDataSourceDefinition.setBeanClass(MonitorableDataSource.class); monitorableDataSourceDefinition.getConstructorArgumentValues() .addGenericArgumentValue(new RuntimeBeanReference(newBeanName)); return monitorableDataSourceDefinition; }
From source file:org.mybatis.spring.config.NamespaceTest.java
private GenericApplicationContext setupSqlSessionFactory() { GenericApplicationContext genericApplicationContext = new GenericApplicationContext(); GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(SqlSessionFactoryBean.class); definition.getPropertyValues().add("dataSource", new MockDataSource()); DefaultListableBeanFactory factory = new DefaultListableBeanFactory(); factory.registerBeanDefinition("sqlSessionFactory", definition); genericApplicationContext.registerBeanDefinition("sqlSessionFactory", definition); genericApplicationContext.refresh(); return genericApplicationContext; }
From source file:com.urbanmania.spring.beans.factory.config.annotations.PropertyAnnotationAndPlaceholderConfigurerTest.java
@Test public void testProcessPropertiesWithAnnotatedGetterAndNoSetter() { GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(AnnotatedGetterWithNoSetterTestBean.class); beanFactory.registerBeanDefinition(TEST_BEAN_NAME, beanDefinition); properties.put(TEST_KEY, TEST_VALUE); try {// w w w. ja v a 2 s. co m configurer.processProperties(beanFactory, properties); } catch (BeanConfigurationException e) { return; } fail("Should throw BeanConfigurationException on no property setter."); }
From source file:dirty.mockito.junit.rules.ActiveTestRule.java
/** * @param beanName/*from w w w . jav a 2s . c o m*/ * the bean name to register */ private void registerJpaDaoBeanDefinition(final String beanName) { final GenericBeanDefinition def = new GenericBeanDefinition(); def.setBeanClass(classUnderTest); final MutablePropertyValues propertyValues = new MutablePropertyValues(); final Object emf = beanFactory.getSingleton("entityManagerFactory"); propertyValues.addPropertyValue("entityManagerFactory", emf); def.setPropertyValues(propertyValues); beanFactory.registerBeanDefinition(beanName, def); }
From source file:org.mybatis.spring.mapper.MapperScannerConfigurerTest.java
@Test public void testScanWithExplicitSqlSessionFactoryViaPlaceholder() throws Exception { setupSqlSessionFactory("sqlSessionFactory2"); // use a property placeholder for the session factory name applicationContext.getBeanDefinition("mapperScanner").getPropertyValues().add("sqlSessionFactoryBeanName", "${sqlSessionFactoryBeanNameProperty}"); Properties props = new java.util.Properties(); props.put("sqlSessionFactoryBeanNameProperty", "sqlSessionFactory2"); GenericBeanDefinition propertyDefinition = new GenericBeanDefinition(); propertyDefinition.setBeanClass(PropertyPlaceholderConfigurer.class); propertyDefinition.getPropertyValues().add("properties", props); applicationContext.registerBeanDefinition("propertiesPlaceholder", propertyDefinition); testInterfaceScan();//w ww .j a va2s.c o m }
From source file:org.mybatis.spring.mapper.MapperScannerConfigurerTest.java
@Test public void testScanWithNameConflict() { GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(Object.class); applicationContext.registerBeanDefinition("mapperInterface", definition); startContext();//w w w . j av a2 s . co m assertSame("scanner should not overwite existing bean definition", applicationContext.getBean("mapperInterface").getClass(), Object.class); }
From source file:com.urbanmania.spring.beans.factory.config.annotations.PropertyAnnotationAndPlaceholderConfigurerTest.java
@Test public void testProcessPropertiesAndUpdate() throws Exception { configurer.setPropertyLoaders(new MockPropertyLoader[] { new MockPropertyLoader(properties) }); GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(UpdateableTestBean.class); beanFactory.registerBeanDefinition(TEST_BEAN_NAME, beanDefinition); properties.put(TEST_KEY, TEST_VALUE); configurer.loadProperties(properties); configurer.processProperties(beanFactory, properties); StaticApplicationContext context = new StaticApplicationContext(); context.registerSingleton(TEST_BEAN_NAME, UpdateableTestBean.class); configurer.setApplicationContext(context); configurer.setBeanFactory(beanFactory); configurer.propertyChanged(new PropertyEvent(this, TEST_KEY, TEST_CHANGED_VALUE)); assertEquals(TEST_CHANGED_VALUE, ((UpdateableTestBean) context.getBean(TEST_BEAN_NAME)).getProperty()); assertNull(System.getProperties().get(TEST_KEY)); }
From source file:de.acosix.alfresco.utility.common.spring.BeanDefinitionFromPropertiesPostProcessor.java
/** * {@inheritDoc}// w w w .ja v a 2 s . com */ @Override public void postProcessBeanDefinitionRegistry(final BeanDefinitionRegistry registry) throws BeansException { final boolean enabled = this.isEnabled(); if (enabled) { LOGGER.info("[{}] Processing beans defined via properties files using prefix {}", this.beanName, this.propertyPrefix); final Map<String, BeanDefinition> beanDefinitions = new HashMap<>(); final Function<String, BeanDefinition> getOrCreateBeanDefinition = beanName -> { BeanDefinition definition; if (beanDefinitions.containsKey(beanName)) { definition = beanDefinitions.get(beanName); } else if (registry.containsBeanDefinition(beanName)) { LOGGER.debug("[{}] Customizing pre-defined bean {}", this.beanName, beanName); definition = registry.getBeanDefinition(beanName); beanDefinitions.put(beanName, definition); } else { LOGGER.debug("[{}] Defining new bean {}", this.beanName, beanName); definition = new GenericBeanDefinition(); beanDefinitions.put(beanName, definition); registry.registerBeanDefinition(beanName, definition); } return definition; }; final Collection<ManagedList<?>> paddedLists = new ArrayList<>(); final Consumer<ManagedList<?>> paddedListRegistrator = list -> { if (!paddedLists.contains(list)) { paddedLists.add(list); } }; final Set<Object> processedKeys = new HashSet<>(); this.processRenamesOrRemovals(registry, processedKeys); this.processBeanConfigurations(getOrCreateBeanDefinition, processedKeys, paddedListRegistrator); this.compressPaddedLists(paddedLists); } }
From source file:com.fitbur.testify.di.spring.SpringServiceLocator.java
@Override public void addService(Class<?> type) { GenericBeanDefinition bean = new GenericBeanDefinition(); bean.setBeanClass(type);// www . j a va 2 s . c o m bean.setRole(ROLE_APPLICATION); DefaultListableBeanFactory beanFactory = (DefaultListableBeanFactory) context.getBeanFactory(); beanFactory.registerBeanDefinition(type.getSimpleName(), bean); }
From source file:com.urbanmania.spring.beans.factory.config.annotations.PropertyAnnotationAndPlaceholderConfigurerTest.java
@Test public void testProcessPropertiesConvertAndUpdate() throws Exception { configurer.setPropertyLoaders(new MockPropertyLoader[] { new MockPropertyLoader(properties) }); GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(ConvertableTestBean.class); beanFactory.registerBeanDefinition(TEST_BEAN_NAME, beanDefinition); properties.put(TEST_KEY, "1"); configurer.loadProperties(properties); configurer.processProperties(beanFactory, properties); StaticApplicationContext context = new StaticApplicationContext(); context.registerSingleton(TEST_BEAN_NAME, ConvertableTestBean.class); configurer.setApplicationContext(context); configurer.setBeanFactory(beanFactory); configurer.propertyChanged(new PropertyEvent(this, TEST_KEY, "2")); assertEquals(2, ((ConvertableTestBean) context.getBean(TEST_BEAN_NAME)).getProperty()); assertNull(System.getProperties().get(TEST_KEY)); }