List of usage examples for org.springframework.beans.factory.support BeanDefinitionRegistry registerBeanDefinition
void registerBeanDefinition(String beanName, BeanDefinition beanDefinition) throws BeanDefinitionStoreException;
From source file:sample.RegisterBeanUtil.java
/** * We only want to create {@link MyDynamicallyRegisteredClass} if we detect * a bean of a particular name exists. More generally Spring Security will * need to create bean definitions based upon the completely populated * {@link BeanDefinitionRegistry}.// w w w . ja v a2 s. c o m * * @param beanName * @param registry * @throws BeansException */ static void registerCustom(String beanName, BeanDefinitionRegistry registry) throws BeansException { boolean beanExists = registry.containsBeanDefinition(beanName); if (beanExists) { String beanClass = MyDynamicallyRegisteredClass.class.getName(); registry.registerBeanDefinition(RegisterBeanUtil.class.getName() + "." + beanName, new RootBeanDefinition(beanClass)); } }
From source file:org.activiti.spring.components.aop.util.Scopifier.java
public static BeanDefinitionHolder createScopedProxy(String beanName, BeanDefinition definition, BeanDefinitionRegistry registry, boolean proxyTargetClass) { BeanDefinitionHolder proxyHolder = ScopedProxyUtils .createScopedProxy(new BeanDefinitionHolder(definition, beanName), registry, proxyTargetClass); registry.registerBeanDefinition(beanName, proxyHolder.getBeanDefinition()); return proxyHolder; }
From source file:Main.java
/** * Register a {@link ScriptFactoryPostProcessor} bean definition in the supplied * {@link BeanDefinitionRegistry} if the {@link ScriptFactoryPostProcessor} hasn't * already been registered./*from w ww . j a v a2s . c om*/ * @param registry the {@link BeanDefinitionRegistry} to register the script processor with * @return the {@link ScriptFactoryPostProcessor} bean definition (new or already registered) */ public static BeanDefinition registerScriptFactoryPostProcessorIfNecessary(BeanDefinitionRegistry registry) { BeanDefinition beanDefinition = null; if (registry.containsBeanDefinition(SCRIPT_FACTORY_POST_PROCESSOR_BEAN_NAME)) { beanDefinition = registry.getBeanDefinition(SCRIPT_FACTORY_POST_PROCESSOR_BEAN_NAME); } else { beanDefinition = new RootBeanDefinition(ScriptFactoryPostProcessor.class); registry.registerBeanDefinition(SCRIPT_FACTORY_POST_PROCESSOR_BEAN_NAME, beanDefinition); } return beanDefinition; }
From source file:org.springframework.hateoas.config.HypermediaSupportBeanDefinitionRegistrar.java
/** * Registers bean definitions for a {@link PluginRegistry} to capture * {@link RelProvider} instances. Wraps the registry into a * {@link DelegatingRelProvider} bean definition backed by the registry. * /* www.ja v a 2 s . c om*/ * @param registry */ private static void registerRelProviderPluginRegistryAndDelegate(BeanDefinitionRegistry registry) { Class<?> defaultRelProviderType = EVO_PRESENT ? EvoInflectorRelProvider.class : DefaultRelProvider.class; RootBeanDefinition defaultRelProviderBeanDefinition = new RootBeanDefinition(defaultRelProviderType); registry.registerBeanDefinition("defaultRelProvider", defaultRelProviderBeanDefinition); RootBeanDefinition annotationRelProviderBeanDefinition = new RootBeanDefinition( AnnotationRelProvider.class); registry.registerBeanDefinition("annotationRelProvider", annotationRelProviderBeanDefinition); BeanDefinitionBuilder registryFactoryBeanBuilder = BeanDefinitionBuilder .rootBeanDefinition(PluginRegistryFactoryBean.class); registryFactoryBeanBuilder.addPropertyValue("type", RelProvider.class); registryFactoryBeanBuilder.addPropertyValue("exclusions", DelegatingRelProvider.class); AbstractBeanDefinition registryBeanDefinition = registryFactoryBeanBuilder.getBeanDefinition(); registry.registerBeanDefinition("relProviderPluginRegistry", registryBeanDefinition); BeanDefinitionBuilder delegateBuilder = BeanDefinitionBuilder .rootBeanDefinition(DelegatingRelProvider.class); delegateBuilder.addConstructorArgValue(registryBeanDefinition); AbstractBeanDefinition beanDefinition = delegateBuilder.getBeanDefinition(); beanDefinition.setPrimary(true); registry.registerBeanDefinition(DELEGATING_REL_PROVIDER_BEAN_NAME, beanDefinition); }
From source file:org.synyx.hades.dao.config.DaoConfigDefinitionParser.java
private static String registerWithSourceAndGeneratedBeanName(BeanDefinitionRegistry registry, AbstractBeanDefinition bean, Object source) { bean.setSource(source);/*www . j a va2 s. c o m*/ String beanName = generateBeanName(bean, registry); registry.registerBeanDefinition(beanName, bean); return beanName; }
From source file:com.gzj.tulip.load.context.RoseWebAppContext.java
/** ?messageSourceRose? */ public static void registerMessageSourceIfNecessary(BeanDefinitionRegistry registry, String[] messageBaseNames) { if (!registry.containsBeanDefinition(MESSAGE_SOURCE_BEAN_NAME)) { GenericBeanDefinition messageSource = new GenericBeanDefinition(); messageSource.setBeanClass(ReloadableResourceBundleMessageSource.class); MutablePropertyValues propertyValues = new MutablePropertyValues(); propertyValues.addPropertyValue("useCodeAsDefaultMessage", true); propertyValues.addPropertyValue("defaultEncoding", "UTF-8"); // propertiesUTF-8?ISO-9959-1 propertyValues.addPropertyValue("cacheSeconds", 60); // hardcode! seconds propertyValues.addPropertyValue("basenames", messageBaseNames); messageSource.setPropertyValues(propertyValues); registry.registerBeanDefinition(MESSAGE_SOURCE_BEAN_NAME, messageSource); }/*w w w . j av a2s .c o m*/ }
From source file:com.avanza.astrix.gs.GsBeanDefinitionRegistryPostProcessorPlugin.java
@Override public void postProcess(BeanDefinitionRegistry registry) { registry.registerBeanDefinition("_astrixClusterInfoHolder", new AnnotatedGenericBeanDefinition(ClusterInfoHolder.class)); }
From source file:org.qi4j.library.spring.bootstrap.internal.service.Qi4jServiceBeanDefinitionParser.java
public final BeanDefinition parse(Element anElement, ParserContext aParserContext) { String serviceId = anElement.getAttribute(SERVICE_ID); // Service factory bean BeanDefinitionBuilder builder = rootBeanDefinition(ServiceFactoryBean.class); builder.addConstructorArgReference(BEAN_ID_QI4J_APPLICATION); builder.addConstructorArgValue(serviceId); AbstractBeanDefinition definition = builder.getBeanDefinition(); // Register service factory bean BeanDefinitionRegistry definitionRegistry = aParserContext.getRegistry(); definitionRegistry.registerBeanDefinition(serviceId, definition); return definition; }
From source file:com.laxser.blitz.web.impl.module.ModuleAppContext.java
/** ?messageSourceRose? */ public static void registerMessageSourceIfNecessary(BeanDefinitionRegistry registry, String[] messageBaseNames) { if (!ArrayUtils.contains(registry.getBeanDefinitionNames(), MESSAGE_SOURCE_BEAN_NAME)) { logger.debug("registerMessageSource " + ArrayUtils.toString(messageBaseNames)); GenericBeanDefinition messageSource = new GenericBeanDefinition(); messageSource.setBeanClass(ReloadableResourceBundleMessageSource.class); MutablePropertyValues propertyValues = new MutablePropertyValues(); propertyValues.addPropertyValue("useCodeAsDefaultMessage", true); propertyValues.addPropertyValue("defaultEncoding", "UTF-8"); // propertiesUTF-8?ISO-9959-1 propertyValues.addPropertyValue("cacheSeconds", 60); // hardcode! 60 propertyValues.addPropertyValue("basenames", messageBaseNames); messageSource.setPropertyValues(propertyValues); registry.registerBeanDefinition(MESSAGE_SOURCE_BEAN_NAME, messageSource); }//from w w w.ja va 2s.com }
From source file:org.qi4j.library.spring.bootstrap.internal.application.Qi4jBootstrapBeanDefinitionParser.java
private void registerBean(ParserContext aParserContext, BeanDefinition aBeanDefinition) { BeanDefinitionRegistry registry = aParserContext.getRegistry(); registry.registerBeanDefinition(BEAN_ID_QI4J_APPLICATION, aBeanDefinition); }