List of usage examples for org.springframework.beans.factory.support GenericBeanDefinition GenericBeanDefinition
public GenericBeanDefinition()
From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java
/** * Register {@link XMLCacheClientFactory} definition *//* w w w . j a v a 2 s. co m*/ private void registerDefaultCacheClientFactory(BeanDefinitionRegistry beanDefinitionRegistry) { GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(RemoteCacheClientFactory.class); definition.setLazyInit(true); MutablePropertyValues propertyValues = definition.getPropertyValues(); propertyValues.addPropertyValue("configurationWebService", new RuntimeBeanReference(CACHE_CONFIGURATION_WEB_SERVICE_ID)); BeanDefinitionReaderUtils.registerBeanDefinition( new BeanDefinitionHolder(definition, DEFAULT_CACHE_CLIENT_FACTORY_ID), beanDefinitionRegistry); }
From source file:net.frontlinesms.FrontlineSMS.java
/** * Create the configLocations bean for the Hibernate config. * This method should only be called from within {@link FrontlineSMS#initApplicationContext()} * @return {@link BeanDefinition} containing details of the hibernate config for the app and its plugins. *//* ww w .ja v a 2 s. c om*/ private BeanDefinition createHibernateConfigLocationsBeanDefinition() { // Initialise list of hibernate config files List<String> hibernateConfigList = new ArrayList<String>(); // Add main hibernate config location hibernateConfigList.add("classpath:frontlinesms.hibernate.cfg.xml"); // Add hibernate config locations for plugins for (Class<PluginController> pluginClass : PluginProperties.getInstance().getPluginClasses()) { LOG.info("Processing plugin class: " + pluginClass.getName()); if (pluginClass.isAnnotationPresent(PluginControllerProperties.class)) { PluginControllerProperties properties = pluginClass.getAnnotation(PluginControllerProperties.class); String pluginHibernateLocation = properties.hibernateConfigPath(); if (!PluginControllerProperties.NO_VALUE.equals(pluginHibernateLocation)) { hibernateConfigList.add(pluginHibernateLocation); } } } GenericBeanDefinition myBeanDefinition = new GenericBeanDefinition(); myBeanDefinition.setBeanClass(ListFactoryBean.class); MutablePropertyValues values = new MutablePropertyValues(); values.addPropertyValue("sourceList", hibernateConfigList); myBeanDefinition.setPropertyValues(values); return myBeanDefinition; }
From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java
/** * @param parserContext//from ww w . j av a2 s. c o m * @param serviceName TODO * @param serviceInterface TODO */ private void registerCacheWebService(BeanDefinitionRegistry beanDefinitionRegistry, String beanName, String serviceName, String serviceInterface, boolean isOneWay) { GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClassName("com.dianping.dpsf.spring.ProxyBeanFactory"); definition.setLazyInit(true); definition.setInitMethodName("init"); MutablePropertyValues propertyValues = definition.getPropertyValues(); propertyValues.addPropertyValue("serviceName", serviceName); propertyValues.addPropertyValue("iface", serviceInterface); propertyValues.addPropertyValue("serialize", "hessian"); propertyValues.addPropertyValue("callMethod", isOneWay ? "oneway" : "sync"); propertyValues.addPropertyValue("timeout", "10000"); propertyValues.addPropertyValue("hosts", getRemoteService()); BeanDefinitionReaderUtils.registerBeanDefinition(new BeanDefinitionHolder(definition, beanName), beanDefinitionRegistry); }
From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java
/** * @param parserContext// w ww .ja v a2s . co m * */ private void registerDefaultCacheItemConfigManager(BeanDefinitionRegistry beanDefinitionRegistry) { GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(RemoteCacheItemConfigManager.class); // lazy init because default CacheItemConfigManager is not required definition.setLazyInit(true); MutablePropertyValues propertyValues = definition.getPropertyValues(); propertyValues.addPropertyValue("configurationWebService", new RuntimeBeanReference(CACHE_CONFIGURATION_WEB_SERVICE_ID)); BeanDefinitionReaderUtils.registerBeanDefinition( new BeanDefinitionHolder(definition, DEFAULT_ITEM_CONFIG_MANAGER_ID), beanDefinitionRegistry); }
From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java
/** * Register {@link CacheInterceptor} definition *//*from w ww. j a va 2 s. com*/ private void registerCacheInterceptorDefinition(Element element, ParserContext parserContext) { GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(CacheInterceptor.class); // Add reference to CacheService definition.getPropertyValues().addPropertyValue("cacheService", new RuntimeBeanReference(cacheServiceProxyId)); cacheInterceptorId = element.getAttribute(CACHE_INTERCEPTOR_ID_ATTR); if (!StringUtils.hasText(cacheInterceptorId)) { cacheInterceptorId = DEFAULT_CACHE_INTERCEPTOR_ID; } BeanDefinitionHolder holder = new BeanDefinitionHolder(definition, this.cacheInterceptorId); BeanDefinitionReaderUtils.registerBeanDefinition(holder, parserContext.getRegistry()); }
From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java
/** * Create cache pointcut definition//from w ww . j a v a2s .co m */ private void registerCachePointcutDefinition(Element element, ParserContext parserContext) { GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(AnnotationMatchingPointcut.class); definition.getConstructorArgumentValues().addGenericArgumentValue(new ValueHolder(null, "java.lang.Class")); definition.getConstructorArgumentValues().addGenericArgumentValue( new ValueHolder("com.dianping.avatar.cache.annotation.Cache", "java.lang.Class")); cachePointcutId = element.getAttribute(CACHE_POINTCUT_ID_ATTR); if (!StringUtils.hasText(cachePointcutId)) { cachePointcutId = DEFAULT_CACHE_POINTCUT_ID; } BeanDefinitionHolder holder = new BeanDefinitionHolder(definition, this.cachePointcutId); BeanDefinitionReaderUtils.registerBeanDefinition(holder, parserContext.getRegistry()); }
From source file:org.iff.infra.util.spring.script.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 *///from w ww . j av a 2s .com protected BeanDefinition createScriptFactoryBeanDefinition(BeanDefinition bd) { GenericBeanDefinition scriptBd = new GenericBeanDefinition(); scriptBd.setBeanClassName(bd.getBeanClassName()); scriptBd.getConstructorArgumentValues().addArgumentValues(bd.getConstructorArgumentValues()); return scriptBd; }
From source file:com.dianping.avatar.cache.spring.CacheBeanDefinitionParser.java
/** * Register {@link DefaultBeanFactoryPointcutAdvisor} definition *//*from w w w . j a va 2 s . c om*/ private void registerAdvisorDefinition(Element element, ParserContext parserContext) { AopNamespaceUtils.registerAspectJAutoProxyCreatorIfNecessary(parserContext, element); GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(DefaultBeanFactoryPointcutAdvisor.class); definition.getPropertyValues().addPropertyValue(ADVICE_BEAN_NAME, new RuntimeBeanNameReference(cacheInterceptorId)); definition.getPropertyValues().addPropertyValue(POINTCUT, new RuntimeBeanReference(cachePointcutId)); String id = element.getAttribute(ADVISOR_ID_ATTR); if (!StringUtils.hasText(id)) { id = DEFAULT_ADVISOR_ID; } BeanDefinitionHolder holder = new BeanDefinitionHolder(definition, "cacheAdvisor"); BeanDefinitionReaderUtils.registerBeanDefinition(holder, parserContext.getRegistry()); }
From source file:org.beangle.spring.bind.AutoConfigProcessor.java
/** * @param beanName// w ww .ja v a 2 s.c o m * @param clazz * @param registry * @param definition */ protected BeanDefinition register(String beanName, Class<?> clazz, String scope, BeanDefinitionRegistry registry) { GenericBeanDefinition def = new GenericBeanDefinition(); def.setBeanClass(clazz); def.setScope(scope); registry.registerBeanDefinition(beanName, def); bindRegistry.register(clazz, beanName); logger.debug("Register definition {} for {}", beanName, clazz); return def; }
From source file:org.bytesoft.bytejta.supports.dubbo.TransactionConfigPostProcessor.java
public void initializeForProvider(ConfigurableListableBeanFactory beanFactory, String application, String refBeanName) throws BeansException { BeanDefinitionRegistry registry = (BeanDefinitionRegistry) beanFactory; GenericBeanDefinition beanDef = new GenericBeanDefinition(); beanDef.setBeanClass(com.alibaba.dubbo.config.spring.ServiceBean.class); MutablePropertyValues mpv = beanDef.getPropertyValues(); mpv.addPropertyValue("interface", RemoteCoordinator.class.getName()); mpv.addPropertyValue("ref", new RuntimeBeanReference(refBeanName)); mpv.addPropertyValue("cluster", "failfast"); mpv.addPropertyValue("loadbalance", "transaction"); mpv.addPropertyValue("group", "org.bytesoft.bytejta"); mpv.addPropertyValue("retries", "0"); mpv.addPropertyValue("timeout", "5000"); String skeletonBeanId = String.format("skeleton@%s", RemoteCoordinator.class.getName()); registry.registerBeanDefinition(skeletonBeanId, beanDef); }