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

protected void handleChildElement(Element ele, ParserContext parserContext, BeanDefinitionBuilder builder) {
    BeanDefinitionParserDelegate delegate = parserContext.getDelegate();

    try {/*from  w w  w  .  j  a  v  a 2 s.  co m*/
        Object o = delegate.parsePropertySubElement(ele, builder.getBeanDefinition());

        String clazz = null;
        if (o instanceof BeanDefinitionHolder) {
            clazz = ((BeanDefinitionHolder) o).getBeanDefinition().getBeanClassName();
        } else if (o instanceof RuntimeBeanReference) {
            clazz = parserContext.getRegistry().getBeanDefinition(((RuntimeBeanReference) o).getBeanName())
                    .getBeanClassName();
        } else if (o instanceof RuntimeBeanNameReference) {
            clazz = parserContext.getRegistry().getBeanDefinition(((RuntimeBeanNameReference) o).getBeanName())
                    .getBeanClassName();
        } else {
            parserContext.getReaderContext().error("Don't know how to get bean class from " + o.getClass(),
                    ele);
        }

        handleChildObject(ele, parserContext, builder, Class.forName(clazz), o);
    } catch (ClassNotFoundException e) {
        throw new RuntimeException(e);
    }
}

From source file:com.dangdang.ddframe.job.lite.spring.namespace.parser.common.AbstractJobBeanDefinitionParser.java

private List<BeanDefinition> createJobListeners(final Element element) {
    Element listenerElement = DomUtils.getChildElementByTagName(element, LISTENER_TAG);
    Element distributedListenerElement = DomUtils.getChildElementByTagName(element, DISTRIBUTED_LISTENER_TAG);
    List<BeanDefinition> result = new ManagedList<>(2);
    if (null != listenerElement) {
        BeanDefinitionBuilder factory = BeanDefinitionBuilder
                .rootBeanDefinition(listenerElement.getAttribute(CLASS_ATTRIBUTE));
        factory.setScope(BeanDefinition.SCOPE_PROTOTYPE);
        result.add(factory.getBeanDefinition());
    }/* w w w . j ava2 s . com*/
    if (null != distributedListenerElement) {
        BeanDefinitionBuilder factory = BeanDefinitionBuilder
                .rootBeanDefinition(distributedListenerElement.getAttribute(CLASS_ATTRIBUTE));
        factory.setScope(BeanDefinition.SCOPE_PROTOTYPE);
        factory.addConstructorArgValue(distributedListenerElement
                .getAttribute(DISTRIBUTED_LISTENER_STARTED_TIMEOUT_MILLISECONDS_ATTRIBUTE));
        factory.addConstructorArgValue(distributedListenerElement
                .getAttribute(DISTRIBUTED_LISTENER_COMPLETED_TIMEOUT_MILLISECONDS_ATTRIBUTE));
        result.add(factory.getBeanDefinition());
    }
    return result;
}

From source file:de.codecentric.capturereplay.annotation.CaptureReplayImportBeanDefinitionRegistrar.java

@Override
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata,
        BeanDefinitionRegistry registry) {
    MultiValueMap<String, Object> attributes = importingClassMetadata
            .getAllAnnotationAttributes(EnableCaptureReplay.class.getName());

    Mode mode = Mode.valueOf(attributes.getFirst("mode").toString());

    if (!Mode.OFF.equals(mode)) {
        BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(CaptureReplayAdvice.class);
        builder.addPropertyValue("mode", mode);
        builder.addPropertyReference("dataMapper", attributes.getFirst("dataMapper").toString());
        registry.registerBeanDefinition(DEFAULT_CAPTURE_REPLAY_ADVICE_BEAN_ID, builder.getBeanDefinition());

        AopConfigUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary(registry);
    }/*  w ww. j  av a2 s.co  m*/
}

From source file:org.lightadmin.core.config.bootstrap.LightAdminBeanDefinitionRegistryPostProcessor.java

private BeanDefinition repositoryEventListener(
        Class<? extends AbstractRepositoryEventListener> repositoryEventListener) {
    BeanDefinitionBuilder builder = rootBeanDefinition(repositoryEventListener);
    builder.setAutowireMode(AbstractBeanDefinition.AUTOWIRE_AUTODETECT);
    return builder.getBeanDefinition();
}

From source file:de.codecentric.capturereplay.ns.CaptureReplayBeanDefinitionParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    Mode mode = Mode.valueOf(element.getAttribute("mode").toUpperCase());

    if (Mode.OFF.equals(mode)) {
        return null;
    }//from   w  w  w.  jav a 2s.c om

    String dataMapperRef = element.getAttribute("data-mapper-ref");

    BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(CaptureReplayAdvice.class);
    builder.addPropertyValue("mode", mode);
    builder.addPropertyReference("dataMapper", dataMapperRef);

    AopConfigUtils.registerAspectJAnnotationAutoProxyCreatorIfNecessary(parserContext.getRegistry());

    return builder.getBeanDefinition();
}

From source file:org.jboss.windup.config.spring.namespace.simple.GlobalBeanParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder.rootBeanDefinition(GlobalDecorator.class);
    beanBuilder.addPropertyValue("description", element.getAttribute("description"));

    if (element.hasAttribute("effort")) {
        beanBuilder.addPropertyValue("effort", Integer.parseInt(element.getAttribute("effort")));
    }//from w w w  . ja va  2 s.  c om

    return beanBuilder.getBeanDefinition();
}

From source file:org.lightadmin.core.config.bootstrap.LightAdminBeanDefinitionRegistryPostProcessor.java

private BeanDefinition mappingContext(EntityManager entityManager) {
    BeanDefinitionBuilder builder = rootBeanDefinition(JpaMetamodelMappingContextFactoryBean.class);
    builder.addPropertyValue("entityManager", entityManager);
    return builder.getBeanDefinition();
}

From source file:org.jboss.windup.config.spring.namespace.simple.SummaryBeanParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder.rootBeanDefinition(SummaryDecorator.class);
    beanBuilder.addPropertyValue("description", element.getAttribute("description"));

    if (element.hasAttribute("effort")) {
        beanBuilder.addPropertyValue("effort", Integer.parseInt(element.getAttribute("effort")));
    }//from w w  w . j  a  v a 2 s  .c o  m

    return beanBuilder.getBeanDefinition();
}