int importCount = getReaderContext().getReader().loadBeanDefinitions(location, actualResources); if (logger.isTraceEnabled()) { logger.trace("Imported " + importCount + " bean definitions from URL location [" + location + "]"); Resource relativeResource = getReaderContext().getResource().createRelative(location); if (relativeResource.exists()) { importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); actualResources.add(relativeResource); importCount = getReaderContext().getReader().loadBeanDefinitions( StringUtils.applyRelativePath(baseLocation, location), actualResources);
int importCount = getReaderContext().getReader().loadBeanDefinitions(location, actualResources); if (logger.isTraceEnabled()) { logger.trace("Imported " + importCount + " bean definitions from URL location [" + location + "]"); Resource relativeResource = getReaderContext().getResource().createRelative(location); if (relativeResource.exists()) { importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); actualResources.add(relativeResource); importCount = getReaderContext().getReader().loadBeanDefinitions( StringUtils.applyRelativePath(baseLocation, location), actualResources);
int importCount = getReaderContext().getReader().loadBeanDefinitions(location, actualResources); if (logger.isDebugEnabled()) { logger.debug("Imported " + importCount + " bean definitions from URL location [" + location + "]"); Resource relativeResource = getReaderContext().getResource().createRelative(location); if (relativeResource.exists()) { importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); actualResources.add(relativeResource); importCount = getReaderContext().getReader().loadBeanDefinitions( StringUtils.applyRelativePath(baseLocation, location), actualResources);
/** * Attempts to load the class on the current thread context class loader or * the class loader which loaded us */ protected Class loadClass(String name) throws ClassNotFoundException { ClassLoader beanClassLoader = readerContext.getReader().getBeanClassLoader(); if (beanClassLoader != null) { try { return beanClassLoader.loadClass(name); } catch (ClassNotFoundException e) { } } ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); if (contextClassLoader != null) { try { return contextClassLoader.loadClass(name); } catch (ClassNotFoundException e) { } } return getClass().getClassLoader().loadClass(name); }
/** * Attempts to load the class on the current thread context class loader or * the class loader which loaded us */ protected Class loadClass(String name) throws ClassNotFoundException { ClassLoader beanClassLoader = readerContext.getReader().getBeanClassLoader(); if (beanClassLoader != null) { try { return beanClassLoader.loadClass(name); } catch (ClassNotFoundException e) { } } ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); if (contextClassLoader != null) { try { return contextClassLoader.loadClass(name); } catch (ClassNotFoundException e) { } } return getClass().getClassLoader().loadClass(name); }
/** * Loads the resource from the given URI */ protected InputStream loadResource(String uri) { if (System.getProperty("xbean.dir") != null) { File f = new File(System.getProperty("xbean.dir") + uri); try { return new FileInputStream(f); } catch (FileNotFoundException e) { // Ignore } } // lets try the thread context class loader first InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream(uri); if (in == null) { ClassLoader cl = parserContext.getReaderContext().getReader().getBeanClassLoader(); if (cl != null) { in = cl.getResourceAsStream(uri); } if (in == null) { in = getClass().getClassLoader().getResourceAsStream(uri); if (in == null) { log.debug("Could not find resource: " + uri); } } } return in; }
/** * Loads the resource from the given URI */ protected InputStream loadResource(String uri) { if (System.getProperty("xbean.dir") != null) { File f = new File(System.getProperty("xbean.dir") + uri); try { return new FileInputStream(f); } catch (FileNotFoundException e) { // Ignore } } // lets try the thread context class loader first InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream(uri); if (in == null) { ClassLoader cl = parserContext.getReaderContext().getReader().getBeanClassLoader(); if (cl != null) { in = cl.getResourceAsStream(uri); } if (in == null) { in = getClass().getClassLoader().getResourceAsStream(uri); if (in == null) { log.debug("Could not find resource: " + uri); } } } return in; }
@Override protected AbstractBeanDefinition parseInternal(Element importElement, ParserContext parserContext) { final ReaderContext readerContext = parserContext.getReaderContext(); final Resource currentResource = readerContext.getResource(); final XmlBeanDefinitionReader xmlBeanDefinitionReader = parserContext.getReaderContext().getReader(); final String resource = importElement.getAttribute(ATTRIBUTE_RESOURCE); final String var = importElement.getAttribute(ATTRIBUTE_VAR); BeanDefinition importParserContext = getParsingContext(parserContext.getRegistry()); final Properties properties = (Properties) importParserContext.getAttribute(ATTRIBUTE_PARSING_PROPERTIES); final Set<String> processedImports = (Set<String>) importParserContext.getAttribute(ATTRIBUTE_PROCESSED_IMPORTS); if (!processedImports.contains(resource + var)) { final Resource relativeResource; try { relativeResource = currentResource.createRelative(resource); } catch (IOException e) { throw new RuntimeException("Cannot parse imported profile: " + resource, e); } properties.setProperty("var", var); LOG.debug("Loading resource [{}] from [{}]. Relative resource is [{}]", resource, currentResource, relativeResource); xmlBeanDefinitionReader.loadBeanDefinitions(relativeResource); processedImports.add(resource); } else { // skip import, hence it has already been processed } return null; }
/** * Register a property placeholder configurer. The configurer will read all * *.properties files from the specified locations. * * @param parserContext * @param locations */ protected void registerPropertyOverrideConfigurer(final ParserContext parserContext, final List locations) { final RootBeanDefinition beanDef = this.createBeanDefinition(ExtendedPropertyOverrideConfigurer.class.getName(), null, true); beanDef.getPropertyValues().addPropertyValue("locations", locations); beanDef.getPropertyValues().addPropertyValue("resourceLoader", parserContext.getReaderContext().getReader().getResourceLoader()); beanDef.getPropertyValues().addPropertyValue("resourceFilter", getResourceFilter()); beanDef.getPropertyValues().addPropertyValue("beanNameSeparator", "/"); this.register(beanDef, ExtendedPropertyOverrideConfigurer.class.getName(), parserContext.getRegistry()); }
/** * Register controllers found in <code>basePackage</code> attribute giving them * <code>parent</code> as parent. * * @param element * @param parserContext * @return */ public BeanDefinition parse(Element element, ParserContext parserContext) { String packageName = element.getAttribute(BASE_PACKAGE_ATTRIBUTE); String parentName = element.getAttribute(PARENT_ATTRIBUTE); this.parserContext = parserContext; this.delegate = parserContext.getDelegate(); this.resourceLoader = (ResourcePatternResolver) parserContext .getReaderContext().getReader().getResourceLoader(); this.registry = parserContext.getReaderContext().getRegistry(); List<Class> controllerClasses = getAllControllerTypeClasses(packageName); if (controllerClasses != null) { for (Class ctrl : controllerClasses) { createBeanDefinition(ctrl, parentName); } } return null; }
/** * @see org.springframework.beans.factory.xml.BeanDefinitionParser#parse(Element, ParserContext) */ public BeanDefinition parse(Element element, ParserContext parserContext) { final ResourceLoader resourceLoader = parserContext.getReaderContext().getReader().getResourceLoader(); // read avalon style configuration - it's optional for this element. // the schema for the sitemap element ensures that location is never null. final String location = getAttributeValue(element, "location", DEFAULT_COCOON_XCONF_LOCATION); try { final ConfigurationInfo info = readConfiguration(location, resourceLoader); createComponents(element, info, parserContext.getRegistry(), parserContext.getDelegate().getReaderContext().getReader(), resourceLoader); } catch (Exception e) { throw new BeanDefinitionStoreException("Unable to read Avalon configuration from '" + location + "'.",e); } return null; }
throws Exception { final ResourcePatternResolver resolver = (ResourcePatternResolver) parserContext.getReaderContext().getReader().getResourceLoader();
final XmlReaderContext readerContext = parserContext.getReaderContext(); final Resource resource = readerContext.getResource(); final XmlBeanDefinitionReader reader = readerContext.getReader();
int importCount = getReaderContext().getReader().loadBeanDefinitions(location); if (logger.isDebugEnabled()) int importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); if (logger.isDebugEnabled()) int importCount = getReaderContext().getReader().loadBeanDefinitions(classpathResource); if (logger.isDebugEnabled()) int importCount = getReaderContext().getReader().loadBeanDefinitions(classpathResource); if (logger.isDebugEnabled())
protected Class resolveBeanClass(AbstractBeanDefinition bd, String beanName) { if (bd.hasBeanClass()) { return bd.getBeanClass(); } try { ResourceLoader rl = parserContext.getReaderContext().getResourceLoader(); ClassLoader cl = rl != null ? rl.getClassLoader() : null; if (cl == null) { cl = parserContext.getReaderContext().getReader().getBeanClassLoader(); } if (cl == null) { cl = Thread.currentThread().getContextClassLoader(); } if (cl == null) { cl = getClass().getClassLoader(); } return bd.resolveBeanClass(cl); } catch (ClassNotFoundException ex) { throw new BeanDefinitionStoreException(bd.getResourceDescription(), beanName, "Bean class [" + bd.getBeanClassName() + "] not found", ex); } catch (NoClassDefFoundError err) { throw new BeanDefinitionStoreException(bd.getResourceDescription(), beanName, "Class that bean class [" + bd.getBeanClassName() + "] depends on not found", err); } }
protected Class resolveBeanClass(AbstractBeanDefinition bd, String beanName) { if (bd.hasBeanClass()) { return bd.getBeanClass(); } try { ResourceLoader rl = parserContext.getReaderContext().getResourceLoader(); ClassLoader cl = rl != null ? rl.getClassLoader() : null; if (cl == null) { cl = parserContext.getReaderContext().getReader().getBeanClassLoader(); } if (cl == null) { cl = Thread.currentThread().getContextClassLoader(); } if (cl == null) { cl = getClass().getClassLoader(); } return bd.resolveBeanClass(cl); } catch (ClassNotFoundException ex) { throw new BeanDefinitionStoreException(bd.getResourceDescription(), beanName, "Bean class [" + bd.getBeanClassName() + "] not found", ex); } catch (NoClassDefFoundError err) { throw new BeanDefinitionStoreException(bd.getResourceDescription(), beanName, "Class that bean class [" + bd.getBeanClassName() + "] depends on not found", err); } }
int importCount = getReaderContext().getReader().loadBeanDefinitions(location); if (logger.isDebugEnabled()) { logger.debug("Imported " + importCount + " bean definitions from URL location [" + location + "]"); int importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); if (logger.isDebugEnabled()) { logger.debug("Imported " + importCount + " bean definitions from relative location [" + location + "]");
int importCount = getReaderContext().getReader().loadBeanDefinitions(location); if (logger.isDebugEnabled()) { logger.debug("Imported " + importCount + " bean definitions from URL location [" + location + "]"); int importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); if (logger.isDebugEnabled()) { logger.debug("Imported " + importCount + " bean definitions from relative location [" + location + "]");
int importCount = getReaderContext().getReader().loadBeanDefinitions(location, actualResources); if (logger.isDebugEnabled()) { logger.debug("Imported " + importCount + " bean definitions from URL location [" + location + "]"); Resource relativeResource = getReaderContext().getResource().createRelative(location); if (relativeResource.exists()) { importCount = getReaderContext().getReader().loadBeanDefinitions(relativeResource); actualResources.add(relativeResource); importCount = getReaderContext().getReader().loadBeanDefinitions( StringUtils.applyRelativePath(baseLocation, location), actualResources);