List of usage examples for org.springframework.beans.factory.xml ParserContext getRegistry
public final BeanDefinitionRegistry getRegistry()
From source file:com.clican.pluto.dataprocess.spring.parser.DeployParser.java
public BeanDefinition parse(Element element, ParserContext parserContext) { BeanDefinitionRegistry bdr = parserContext.getRegistry(); RootBeanDefinition beanDef = new RootBeanDefinition(); beanDef.setAbstract(false);/*w ww. j a v a 2 s.c om*/ beanDef.setBeanClass(Deploy.class); beanDef.setLazyInit(false); beanDef.setAutowireMode(Autowire.BY_NAME.value()); String id = element.getAttribute("id"); if (StringUtils.isEmpty(id)) { id = "dplDeploy#" + element.hashCode(); } bdr.registerBeanDefinition(id, beanDef); this.setBeanDefinitionStringProperty("name", beanDef, element); this.setBeanDefinitionStringProperty("url", beanDef, element); this.setBeanDefinitionStringProperty("propertyResources", beanDef, element); return beanDef; }
From source file:eap.config.AspectJAutoProxyBeanDefinitionParser.java
private void extendBeanDefinition(Element element, ParserContext parserContext) { BeanDefinition beanDef = parserContext.getRegistry() .getBeanDefinition(AopConfigUtils.AUTO_PROXY_CREATOR_BEAN_NAME); if (element.hasChildNodes()) { addIncludePatterns(element, parserContext, beanDef); }//from w ww. j a v a2 s . com }
From source file:net.danielkvasnicka.flower.core.FlowerURLMappingBeanDefinitionDecorator.java
/** * @see org.springframework.beans.factory.xml.BeanDefinitionDecorator#decorate(org.w3c.dom.Node, org.springframework.beans.factory.config.BeanDefinitionHolder, org.springframework.beans.factory.xml.ParserContext) *//*from ww w . j a v a 2 s . co m*/ @SuppressWarnings("unchecked") @Override public BeanDefinitionHolder decorate(final Node node, BeanDefinitionHolder bdef, ParserContext parseCtx) { final BeanDefinition urlMappingHolderBeanDefinition = parseCtx.getRegistry() .getBeanDefinition(Constants.URL_MAPPING_HOLDER_BEAN_NAME); final PropertyValue propertyVal = urlMappingHolderBeanDefinition.getPropertyValues() .getPropertyValue(Constants.URL_MAPPING_HOLDER_PROPERTY); Map<String, String> urlMapping; if (propertyVal == null) { urlMapping = new HashMap<String, String>(); } else { urlMapping = (Map<String, String>) propertyVal.getValue(); } urlMapping.put(node.getNodeValue(), bdef.getBeanName()); urlMappingHolderBeanDefinition.getPropertyValues() .addPropertyValue(new PropertyValue("urlMapping", urlMapping)); return bdef; }
From source file:de.itsvs.cwtrpc.controller.config.BaseServiceConfigParser.java
protected void createDefaultRpcTokenValidatorBeanDefinition(Element element, ParserContext parserContext, String rpcTokenValidatorName) { if (!parserContext.getRegistry().containsBeanDefinition(rpcTokenValidatorName)) { final RootBeanDefinition bd; if (log.isInfoEnabled()) { log.info("Registering default RPC token validator with name '" + rpcTokenValidatorName + "'"); }//from w w w .j av a 2s. co m bd = new RootBeanDefinition(DefaultXsrfTokenService.class); bd.setSource(parserContext.extractSource(element)); bd.setLazyInit(true); parserContext.registerBeanComponent(new BeanComponentDefinition(bd, rpcTokenValidatorName)); } }
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); }
From source file:eap.config.AnnotationDrivenCacheBeanDefinitionParser.java
/** * Registers a// www . j a va 2 s .c o m * <pre> * <bean id="cacheAspect" class="org.springframework.cache.aspectj.AnnotationCacheAspect" factory-method="aspectOf"> * <property name="cacheManager" ref="cacheManager"/> * <property name="keyGenerator" ref="keyGenerator"/> * </bean> * * </pre> * @param element * @param parserContext */ private void registerCacheAspect(Element element, ParserContext parserContext) { if (!parserContext.getRegistry().containsBeanDefinition(CACHE_ASPECT_BEAN_NAME)) { RootBeanDefinition def = new RootBeanDefinition(); def.setBeanClassName(CACHE_ASPECT_CLASS_NAME); def.setFactoryMethodName("aspectOf"); parseCacheManagerProperty(element, def); // CacheNamespaceHandler.parseKeyGenerator(element, def); ReflectUtil.invokeMethod(CacheNamespaceHandler.class, "parseKeyGenerator", new Class<?>[] { Element.class, BeanDefinition.class }, new Object[] { element, def }); parserContext.registerBeanComponent(new BeanComponentDefinition(def, CACHE_ASPECT_BEAN_NAME)); } }
From source file:com.clican.pluto.dataprocess.spring.parser.AbstractProcessorParser.java
@SuppressWarnings({ "unchecked", "rawtypes" }) public BeanDefinition parse(Element element, ParserContext parserContext) { BeanDefinitionRegistry bdr = parserContext.getRegistry(); RootBeanDefinition beanDef = new RootBeanDefinition(); beanDef.setDestroyMethodName("destroy"); beanDef.setAbstract(false);//w w w.java 2s . co m beanDef.setBeanClass(getDataProcessorClass()); beanDef.setLazyInit(false); beanDef.setAutowireMode(Autowire.BY_NAME.value()); String id = element.getAttribute("id"); if (bdr.containsBeanDefinition(id)) { throw new RuntimeException("id[" + id + "]??"); } bdr.registerBeanDefinition(id, beanDef); beanDef.getPropertyValues().addPropertyValue("id", id); String startProcessor = element.getAttribute("startProcessor"); boolean sp = false; if (StringUtils.isNotEmpty(startProcessor)) { sp = Boolean.parseBoolean(startProcessor); } beanDef.getPropertyValues().addPropertyValue("startProcessor", sp); String transaction = element.getAttribute("transaction"); if (StringUtils.isNotEmpty(transaction)) { beanDef.getPropertyValues().addPropertyValue("transaction", transaction); } else if (sp) { beanDef.getPropertyValues().addPropertyValue("transaction", TransactionMode.BEGIN.getMode()); } String cloneContext = element.getAttribute("cloneContext"); if (StringUtils.isNotEmpty(cloneContext)) { beanDef.getPropertyValues().addPropertyValue("cloneContext", Boolean.parseBoolean(cloneContext)); } String propagations = element.getAttribute("propagations"); if (StringUtils.isNotEmpty(propagations)) { List<String> propataionList = new ArrayList<String>(); for (String propagation : propagations.split(",")) { propataionList.add(propagation); } beanDef.getPropertyValues().addPropertyValue("propagations", propataionList); } String nextDataProcessors = element.getAttribute("nextDataProcessors"); if (StringUtils.isNotEmpty(nextDataProcessors)) { List nextDataProcessList = new ManagedList(); for (String nextDataProcess : nextDataProcessors.split(",")) { nextDataProcess = nextDataProcess.trim(); nextDataProcessList.add(new RuntimeBeanReference(nextDataProcess)); } beanDef.getPropertyValues().addPropertyValue("nextDataProcessors", nextDataProcessList); } customiseBeanDefinition(beanDef, element, parserContext); return beanDef; }
From source file:org.springmodules.cache.config.CachingListenerValidatorImpl.java
/** * @see CachingListenerValidator#validate(Object, int, ParserContext) *//*w ww.j a va2s . c om*/ public void validate(Object cachingListener, int index, ParserContext parserContext) throws IllegalStateException { BeanDefinitionRegistry registry = parserContext.getRegistry(); BeanDefinition beanDefinition = null; if (cachingListener instanceof RuntimeBeanReference) { String beanName = ((RuntimeBeanReference) cachingListener).getBeanName(); beanDefinition = registry.getBeanDefinition(beanName); } else if (cachingListener instanceof BeanDefinitionHolder) { beanDefinition = ((BeanDefinitionHolder) cachingListener).getBeanDefinition(); } else { throw new IllegalStateException("The caching listener reference/holder [" + index + "] should be an instance of <" + RuntimeBeanReference.class.getName() + "> or <" + BeanDefinitionHolder.class.getName() + ">"); } Class expectedClass = CachingListener.class; Class actualClass = resolveBeanClass(beanDefinition); if (!expectedClass.isAssignableFrom(actualClass)) { throw new IllegalStateException("The caching listener [" + index + "] should be an instance of <" + expectedClass.getName() + ">"); } }
From source file:org.mybatis.spring.config.MapperScannerBeanDefinitionParser.java
/** * {@inheritDoc}/* w ww.j av a 2 s . co m*/ */ @Override public synchronized BeanDefinition parse(Element element, ParserContext parserContext) { ClassPathMapperScanner scanner = new ClassPathMapperScanner(parserContext.getRegistry()); ClassLoader classLoader = scanner.getResourceLoader().getClassLoader(); XmlReaderContext readerContext = parserContext.getReaderContext(); scanner.setResourceLoader(readerContext.getResourceLoader()); try { String annotationClassName = element.getAttribute(ATTRIBUTE_ANNOTATION); if (StringUtils.hasText(annotationClassName)) { @SuppressWarnings("unchecked") Class<? extends Annotation> markerInterface = (Class<? extends Annotation>) classLoader .loadClass(annotationClassName); scanner.setAnnotationClass(markerInterface); } String markerInterfaceClassName = element.getAttribute(ATTRIBUTE_MARKER_INTERFACE); if (StringUtils.hasText(markerInterfaceClassName)) { Class<?> markerInterface = classLoader.loadClass(markerInterfaceClassName); scanner.setMarkerInterface(markerInterface); } String nameGeneratorClassName = element.getAttribute(ATTRIBUTE_NAME_GENERATOR); if (StringUtils.hasText(nameGeneratorClassName)) { Class<?> nameGeneratorClass = classLoader.loadClass(nameGeneratorClassName); BeanNameGenerator nameGenerator = BeanUtils.instantiateClass(nameGeneratorClass, BeanNameGenerator.class); scanner.setBeanNameGenerator(nameGenerator); } } catch (Exception ex) { readerContext.error(ex.getMessage(), readerContext.extractSource(element), ex.getCause()); } String sqlSessionTemplateBeanName = element.getAttribute(ATTRIBUTE_TEMPLATE_REF); scanner.setSqlSessionTemplateBeanName(sqlSessionTemplateBeanName); String sqlSessionFactoryBeanName = element.getAttribute(ATTRIBUTE_FACTORY_REF); scanner.setSqlSessionFactoryBeanName(sqlSessionFactoryBeanName); scanner.registerFilters(); String basePackage = element.getAttribute(ATTRIBUTE_BASE_PACKAGE); scanner.scan(StringUtils.tokenizeToStringArray(basePackage, ConfigurableApplicationContext.CONFIG_LOCATION_DELIMITERS)); return null; }
From source file:org.fishwife.jrugged.spring.config.MonitorMethodInterceptorDefinitionDecorator.java
/** * Method called by Spring when it encounters the custom jrugged:methods * attribute. Registers the performance monitor and interceptor. *///from w ww . j a va 2s .c o m public BeanDefinitionHolder decorate(Node source, BeanDefinitionHolder holder, ParserContext context) { String beanName = holder.getBeanName(); BeanDefinitionRegistry registry = context.getRegistry(); registerPerformanceMonitor(beanName, registry); registerInterceptor(source, beanName, registry); return holder; }