Example usage for org.springframework.beans.factory.support SimpleBeanDefinitionRegistry getBeanDefinition

List of usage examples for org.springframework.beans.factory.support SimpleBeanDefinitionRegistry getBeanDefinition

Introduction

In this page you can find the example usage for org.springframework.beans.factory.support SimpleBeanDefinitionRegistry getBeanDefinition.

Prototype

@Override
    public BeanDefinition getBeanDefinition(String beanName) throws NoSuchBeanDefinitionException 

Source Link

Usage

From source file:grails.spring.BeanBuilder.java

/**
 * Imports Spring bean definitions from either XML or Groovy sources into the current bean builder instance
 *
 * @param resourcePattern The resource pattern
 *//*  w  w  w  .  j  a  v a2  s. c o m*/
public void importBeans(String resourcePattern) {
    try {
        Resource[] resources = resourcePatternResolver.getResources(resourcePattern);
        for (Resource resource : resources) {
            if (resource.getFilename().endsWith(".groovy")) {
                loadBeans(resource);
            } else if (resource.getFilename().endsWith(".xml")) {
                SimpleBeanDefinitionRegistry beanRegistry = new SimpleBeanDefinitionRegistry();
                XmlBeanDefinitionReader beanReader = new XmlBeanDefinitionReader(beanRegistry);
                beanReader.loadBeanDefinitions(resource);
                String[] beanNames = beanRegistry.getBeanDefinitionNames();
                for (String beanName : beanNames) {
                    springConfig.addBeanDefinition(beanName, beanRegistry.getBeanDefinition(beanName));
                }
            }
        }
    } catch (IOException e) {
        LOG.error("Error loading beans for resource pattern: " + resourcePattern, e);
    }
}

From source file:org.springframework.context.groovy.GroovyBeanDefinitionReader.java

/**
 * Imports Spring bean definitions from either XML or Groovy sources into the current bean builder instance
 * // www .ja  v  a 2  s.  c o  m
 * @param resourcePattern The resource pattern
 */
public void importBeans(String resourcePattern) {
    try {
        Resource[] resources = resourcePatternResolver.getResources(resourcePattern);
        for (int i = 0; i < resources.length; i++) {
            Resource resource = resources[i];
            if (resource.getFilename().endsWith(".groovy")) {
                loadBeans(resource);
            } else if (resource.getFilename().endsWith(".xml")) {
                SimpleBeanDefinitionRegistry beanRegistry = new SimpleBeanDefinitionRegistry();
                XmlBeanDefinitionReader beanReader = new XmlBeanDefinitionReader(beanRegistry);
                beanReader.loadBeanDefinitions(resource);
                String[] beanNames = beanRegistry.getBeanDefinitionNames();
                for (int j = 0; j < beanNames.length; j++) {
                    String beanName = beanNames[j];
                    springConfig.addBeanDefinition(beanName, beanRegistry.getBeanDefinition(beanName));
                }
            }
        }

    } catch (IOException e) {
        LOG.error("Error loading beans for resource pattern: " + resourcePattern, e);
    }
}