Example usage for org.springframework.beans.factory.xml XmlReaderContext getResourceLoader

List of usage examples for org.springframework.beans.factory.xml XmlReaderContext getResourceLoader

Introduction

In this page you can find the example usage for org.springframework.beans.factory.xml XmlReaderContext getResourceLoader.

Prototype

@Nullable
public final ResourceLoader getResourceLoader() 

Source Link

Document

Return the resource loader to use, if any.

Usage

From source file:com.bstek.dorado.web.servlet.DefaultDoradoAppContextImporter.java

protected void importBeanDefinitionResource(String location, Element element, ParserContext parserContext)
        throws Exception {
    XmlReaderContext readerContext = parserContext.getReaderContext();
    try {/*from   w  ww.ja v  a  2s.c  o m*/
        ResourceLoader resourceLoader = readerContext.getResourceLoader();
        Resource relativeResource = resourceLoader.getResource(location);

        int importCount = readerContext.getReader().loadBeanDefinitions(relativeResource);
        if (logger.isDebugEnabled()) {
            logger.debug(
                    "Imported " + importCount + " bean definitions from dorado-context [" + location + "]");
        }
    } catch (Exception ex) {
        readerContext.error("Invalid dorado-context [" + location + "] to import bean definitions from",
                element, null, ex);
    }

    readerContext.fireImportProcessed(location, readerContext.extractSource(element));
}

From source file:org.mybatis.spring.config.MapperScannerBeanDefinitionParser.java

/**
 * {@inheritDoc}/* w w w. ja v  a2 s .com*/
 */
@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:com.cloudseal.spring.client.namespace.SAMLBeanDefinitionParserInstanceTest.java

@Before
@SuppressWarnings({ "unchecked" })
public void prepareParserContext() throws IOException, SAXException, ParserConfigurationException {
    final XmlReaderContext readerContext = mock(XmlReaderContext.class);
    when(readerContext.generateBeanName(any(BeanDefinition.class)))
            .thenAnswer(GeneratedBeanNameAnswer.generatedBeanName());
    when(readerContext.getResourceLoader()).thenReturn(new DefaultResourceLoader());

    registry = new SimpleBeanDefinitionRegistry();
    final BeanDefinitionBuilder filterChain = BeanDefinitionBuilder.rootBeanDefinition(FilterChainProxy.class);
    final Map map = new ManagedMap();
    map.put("/**", new ManagedList());
    filterChain.addPropertyValue("filterChainMap", map);
    registry.registerBeanDefinition("org.springframework.security.filterChainProxy",
            filterChain.getBeanDefinition());

    parserContext = mock(ParserContext.class);
    when(parserContext.getReaderContext()).thenReturn(readerContext);
    when(parserContext.getRegistry()).thenReturn(registry);

    rootElement = domFromFile("full-config.xml", "sso");
}

From source file:info.sargis.eventbus.config.EventBusHandlerBeanDefinitionParser.java

protected ClassPathBeanDefinitionScanner configureScanner(ParserContext parserContext, Element element) {
    XmlReaderContext readerContext = parserContext.getReaderContext();

    // Delegate bean definition registration to scanner class.
    ClassPathBeanDefinitionScanner scanner = createScanner(readerContext, false);
    scanner.setResourceLoader(readerContext.getResourceLoader());
    scanner.setBeanDefinitionDefaults(parserContext.getDelegate().getBeanDefinitionDefaults());
    scanner.setAutowireCandidatePatterns(parserContext.getDelegate().getAutowireCandidatePatterns());

    parseTypeFilters(element, scanner, readerContext, parserContext);

    return scanner;
}