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

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

Introduction

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

Prototype

public AbstractBeanDefinition getBeanDefinition() 

Source Link

Document

Validate and return the created BeanDefinition object.

Usage

From source file:com.predic8.membrane.core.config.spring.AbstractParser.java

public BeanDefinition parse(Element e) {
    inlined = true;/*  ww  w. j a  v a  2  s.c  o  m*/
    BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(getBeanClass(e));
    doParse(e, builder);
    return builder.getBeanDefinition();
}

From source file:org.bigtester.ate.xmlschema.WindowFindByOpenSequenceBeanDefinitionParser.java

/**
 * {@inheritDoc}//  w  w w. j a  v a 2  s .c  o  m
 */
@Override
protected @Nullable AbstractBeanDefinition parseInternal(@Nullable Element element,
        @Nullable ParserContext parserContext) {
    // Here we parse the Spring elements such as < property>
    if (parserContext == null || element == null)
        throw GlobalUtils.createNotInitializedException("element and parserContext");
    // this will never be null since the schema explicitly requires that a value be supplied
    String openSeq = element
            .getAttribute(XsdElementConstants.ATTR_BROWSERWINDOWFINDBYOPENSEQUENCE_OPENSEQUENCE);
    BeanDefinitionBuilder factory = BeanDefinitionBuilder
            .rootBeanDefinition(TestWindowFindByOpenSequence.class);
    if (StringUtils.hasText(openSeq))
        factory.addConstructorArgValue(Integer.parseInt(openSeq));

    return factory.getBeanDefinition();
}

From source file:com.dangdang.ddframe.reg.spring.namespace.PlaceholderBeanDefinitionParser.java

@Override
//CHECKSTYLE:OFF/*from   w  ww .  j  a v a 2 s .  c om*/
protected AbstractBeanDefinition parseInternal(final Element element, final ParserContext parserContext) {
    //CHECKSTYLE:ON
    BeanDefinitionBuilder factory = BeanDefinitionBuilder
            .rootBeanDefinition(PropertySourcesPlaceholderConfigurer.class);
    factory.addPropertyValue("ignoreUnresolvablePlaceholders", true);
    BeanDefinitionBuilder definitionBuilder = BeanDefinitionBuilder
            .rootBeanDefinition(RegistryPropertySources.class);
    definitionBuilder.addConstructorArgReference(element.getAttribute("registerRef"));
    factory.addPropertyValue("propertySources", definitionBuilder.getBeanDefinition());
    return factory.getBeanDefinition();
}

From source file:org.synyx.hades.dao.orm.DaoInterfaceAwareBeanPostProcessorUnitTest.java

@Test
public void doesNotResolveInterfaceForUnloadableClass() throws Exception {

    BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(FACTORY_CLASS)
            .addPropertyValue(DAO_INTERFACE_PROPERTY, "com.acme.Foo");

    when(beanFactory.getBeanDefinition(BEAN_NAME)).thenReturn(builder.getBeanDefinition());

    assertNotTypeDetected(FACTORY_CLASS);
}

From source file:at.porscheinformatik.common.spring.web.extended.config.SpringWebExtendedRegistrar.java

private void registerTemplateController(BeanDefinitionRegistry registry, Boolean fallback) {
    BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(HtmlTemplateController.class);
    builder.addConstructorArgValue(fallback);

    registry.registerBeanDefinition("templateController", builder.getBeanDefinition());
}

From source file:com.tacitknowledge.flip.spring.config.FeatureServiceHandlerParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder factoryBuilder = BeanDefinitionBuilder
            .rootBeanDefinition(FeatureServiceDirectFactory.class);
    RootBeanDefinition factoryBean = (RootBeanDefinition) factoryBuilder.getBeanDefinition();
    parserContext.getRegistry().registerBeanDefinition(FlipSpringAspect.FEATURE_SERVICE_FACTORY_BEAN_NAME,
            factoryBean);/*from  ww w  .  j a v  a2  s  .  c om*/

    MutablePropertyValues factoryPropertyValues = new MutablePropertyValues();
    factoryBean.setPropertyValues(factoryPropertyValues);

    String environmentBean = element.getAttribute("environment");
    if (environmentBean != null && !environmentBean.isEmpty()) {
        factoryPropertyValues.addPropertyValue("environment", new RuntimeBeanNameReference(environmentBean));
    }

    Element contextProvidersElement = DomUtils.getChildElementByTagName(element, "context-providers");
    if (contextProvidersElement != null) {
        List contextProvidersList = parserContext.getDelegate().parseListElement(contextProvidersElement,
                factoryBean);
        if (contextProvidersList != null && !contextProvidersList.isEmpty()) {
            factoryPropertyValues.addPropertyValue("contextProviders", contextProvidersList);
        }
    }

    Element propertyReadersElement = DomUtils.getChildElementByTagName(element, "property-readers");
    if (propertyReadersElement != null && propertyReadersElement.hasChildNodes()) {
        List propertyReadersList = parserContext.getDelegate().parseListElement(propertyReadersElement,
                factoryBean);
        if (propertyReadersList != null && !propertyReadersList.isEmpty()) {
            factoryPropertyValues.addPropertyValue("propertyReaders", propertyReadersList);
        }
    }

    Element propertiesElement = DomUtils.getChildElementByTagName(element, "properties");
    if (propertiesElement != null && propertiesElement.hasChildNodes()) {
        Properties properties = parserContext.getDelegate().parsePropsElement(propertiesElement);
        if (properties != null && !properties.isEmpty()) {
            factoryPropertyValues.addPropertyValue("properties", properties);
        }
    }

    BeanDefinitionBuilder featureServiceBuilder = BeanDefinitionBuilder.genericBeanDefinition();
    BeanDefinition featureServiceRawBean = featureServiceBuilder.getRawBeanDefinition();
    featureServiceRawBean.setFactoryBeanName(FlipSpringAspect.FEATURE_SERVICE_FACTORY_BEAN_NAME);
    featureServiceRawBean.setFactoryMethodName("createFeatureService");
    parserContext.getRegistry().registerBeanDefinition(FlipSpringAspect.FEATURE_SERVICE_BEAN_NAME,
            featureServiceBuilder.getBeanDefinition());

    return null;
}

From source file:org.xeustechnologies.jcl.spring.JclBeanDefinitionDecorator.java

@SuppressWarnings("unchecked")
private void createDependencyOnJcl(Node node, BeanDefinitionHolder holder, ParserContext parserContext) {
    AbstractBeanDefinition definition = ((AbstractBeanDefinition) holder.getBeanDefinition());
    String jclRef = node.getAttributes().getNamedItem(JCL_REF).getNodeValue();

    if (!parserContext.getRegistry().containsBeanDefinition(JCL_FACTORY)) {
        BeanDefinitionBuilder initializer = BeanDefinitionBuilder.rootBeanDefinition(JclObjectFactory.class,
                JCL_FACTORY_CONSTRUCTOR);
        parserContext.getRegistry().registerBeanDefinition(JCL_FACTORY, initializer.getBeanDefinition());
    }//from   ww  w .  j  a  v  a 2s.  com

    if (parserContext.getRegistry().containsBeanDefinition(jclRef)) {
        String[] dependsOn = definition.getDependsOn();
        if (dependsOn == null) {
            dependsOn = new String[] { jclRef, JCL_FACTORY };
        } else {
            List dependencies = new ArrayList(Arrays.asList(dependsOn));
            dependencies.add(jclRef);
            dependencies.add(JCL_FACTORY);
            dependsOn = (String[]) dependencies.toArray(new String[0]);
        }
        definition.setDependsOn(dependsOn);
    } else
        throw new JclException("JCL Bean definition " + jclRef + "not found");
}

From source file:com.jeffrodriguez.webtools.spring.ns.UrlBeanDefinitionParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(UrlBuilderFactoryBean.class);

    factory.addPropertyValue("baseUrl", element.getAttribute("base"));

    parseParameters(DomUtils.getChildElements(element), factory);

    return factory.getBeanDefinition();
}

From source file:com.alibaba.dubbo.config.spring.context.annotation.DubboConfigBindingRegistrar.java

private void registerDubboConfigBean(String beanName, Class<? extends AbstractConfig> configClass,
        BeanDefinitionRegistry registry) {

    BeanDefinitionBuilder builder = rootBeanDefinition(configClass);

    AbstractBeanDefinition beanDefinition = builder.getBeanDefinition();

    registry.registerBeanDefinition(beanName, beanDefinition);

    if (log.isInfoEnabled()) {
        log.info("The dubbo config bean definition [name : " + beanName + ", class : " + configClass.getName()
                + "] has been registered.");
    }/*  w  w  w .ja v a2 s . c  o  m*/

}

From source file:org.openmrs.module.xreports.web.RefAppConfiguration.java

/**
 * @see org.springframework.beans.factory.config.BeanFactoryPostProcessor#postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory)
 */// w  ww . j  av  a 2  s  . co m
@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
    try {
        //http://stackoverflow.com/questions/11606504/registering-beansprototype-at-runtime-in-spring
        Class cls = Context.loadClass("org.openmrs.ui.framework.StandardModuleUiConfiguration");
        BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(cls);
        builder.addPropertyValue("moduleId", "xreports"); // set property value
        ((DefaultListableBeanFactory) beanFactory)
                .registerBeanDefinition("xreportsStandardModuleUiConfiguration", builder.getBeanDefinition());
    } catch (ClassNotFoundException ex) {
        //ignore as this means we are not running under the reference app
    }
}