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

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

Introduction

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

Prototype

public static BeanDefinitionBuilder genericBeanDefinition(Class<?> beanClass) 

Source Link

Document

Create a new BeanDefinitionBuilder used to construct a GenericBeanDefinition .

Usage

From source file:org.opencredo.esper.config.xml.EsperTemplateParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {

    BeanDefinitionBuilder builder = BeanDefinitionBuilder
            .genericBeanDefinition(EsperNamespaceUtils.BASE_PACKAGE + ".spring.EsperTemplateBean");

    initialiseStatements(element, parserContext, builder);

    initializeConfiguration(element, builder);

    initializeUnmatchedListener(element, builder);

    return builder.getBeanDefinition();
}

From source file:org.spearal.spring.rest.xml.SpearalRestBeanDefinitionParser.java

@Override
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
    if ("".equals(element.getAttribute(ID_ATTRIBUTE)))
        element.setAttribute(ID_ATTRIBUTE, SpearalRestConfigurator.class.getName());

    if (!parserContext.getRegistry().containsBeanDefinition(SpearalMessageConverter.class.getName())) {
        BeanDefinitionBuilder messageConverterBuilder = BeanDefinitionBuilder
                .genericBeanDefinition(SpearalMessageConverter.class);
        messageConverterBuilder.setAutowireMode(AbstractBeanDefinition.AUTOWIRE_CONSTRUCTOR);
        registerInfrastructureComponent(element, parserContext, messageConverterBuilder,
                SpearalMessageConverter.class.getName());
    }/*  w w w.  ja v a2  s.  c  om*/

    if (!parserContext.getRegistry().containsBeanDefinition(SpearalResponseBodyAdvice.class.getName())) {
        BeanDefinitionBuilder responseBodyAdviceBuilder = BeanDefinitionBuilder
                .genericBeanDefinition(SpearalResponseBodyAdvice.class);
        responseBodyAdviceBuilder.setAutowireMode(AbstractBeanDefinition.AUTOWIRE_CONSTRUCTOR);
        registerInfrastructureComponent(element, parserContext, responseBodyAdviceBuilder,
                SpearalResponseBodyAdvice.class.getName());
    }
}

From source file:org.brekka.stillingar.spring.config.PropertyPlaceholderBeanDefinitionParser.java

@Override
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
    String serviceRef = element.getAttribute("service-ref");
    String prefix = element.getAttribute("prefix");
    String suffix = element.getAttribute("suffix");

    builder.addConstructorArgReference(serviceRef);

    BeanDefinitionBuilder placeholderParser = BeanDefinitionBuilder
            .genericBeanDefinition(DefaultPlaceholderParser.class);
    placeholderParser.addConstructorArgValue(prefix);
    placeholderParser.addConstructorArgValue(suffix);

    builder.addPropertyValue("placeholderParser", placeholderParser.getBeanDefinition());
}

From source file:sipackage.config.xml.SIAdapterUpperPrefixOutboundChannelAdapterParser.java

@Override
protected AbstractBeanDefinition parseConsumer(Element element, ParserContext parserContext) {

    final BeanDefinitionBuilder siAdapterLowerPrefixOutboundChannelAdapterBuilder = BeanDefinitionBuilder
            .genericBeanDefinition(SIAdapterUpperPrefixOutboundGateway.class);
    final BeanDefinitionBuilder siAdapterLowerPrefixExecutorBuilder = SIAdapterUpperPrefixParserUtils
            .getSIAdapterUpperPrefixExecutorBuilder(element, parserContext);

    IntegrationNamespaceUtils.setValueIfAttributeDefined(siAdapterLowerPrefixExecutorBuilder, element,
            "example-property");

    final BeanDefinition siAdapterLowerPrefixExecutorBuilderBeanDefinition = siAdapterLowerPrefixExecutorBuilder
            .getBeanDefinition();//from ww  w .  j a va 2s  .  co  m
    final String channelAdapterId = this.resolveId(element,
            siAdapterLowerPrefixOutboundChannelAdapterBuilder.getRawBeanDefinition(), parserContext);
    final String siAdapterLowerPrefixExecutorBeanName = channelAdapterId + ".siAdapterLowerPrefixExecutor";

    parserContext.registerBeanComponent(new BeanComponentDefinition(
            siAdapterLowerPrefixExecutorBuilderBeanDefinition, siAdapterLowerPrefixExecutorBeanName));

    siAdapterLowerPrefixOutboundChannelAdapterBuilder
            .addConstructorArgReference(siAdapterLowerPrefixExecutorBeanName);
    siAdapterLowerPrefixOutboundChannelAdapterBuilder.addPropertyValue("producesReply", Boolean.FALSE);

    return siAdapterLowerPrefixOutboundChannelAdapterBuilder.getBeanDefinition();

}

From source file:uk.co.bssd.monitoring.spring.MonitorBeanDefinitionParser.java

@Override
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder bean) {

    Element adapterElement = getChildElement(element.getChildNodes(), "adapter");
    String adapterRef = adapterElement.getAttribute("ref");

    Element reporterElement = getChildElement(element.getChildNodes(), "reporter");
    String reporterRef = reporterElement.getAttribute("ref");

    BeanDefinitionBuilder monitorBeanDefinitionBuilder = BeanDefinitionBuilder
            .genericBeanDefinition(Monitor.class);
    monitorBeanDefinitionBuilder.addConstructorArgReference(adapterRef);
    monitorBeanDefinitionBuilder.addConstructorArgReference(reporterRef);

    String monitorBeanName = UUID.randomUUID().toString();
    BeanDefinitionHolder monitorBeanDefinitionHolder = new BeanDefinitionHolder(
            monitorBeanDefinitionBuilder.getBeanDefinition(), monitorBeanName);

    registerBeanDefinition(monitorBeanDefinitionHolder, parserContext.getRegistry());

    BeanComponentDefinition monitorBeanComponentDefinition = new BeanComponentDefinition(
            monitorBeanDefinitionHolder);
    parserContext.registerComponent(monitorBeanComponentDefinition);

    long intervalMs = Long.parseLong(element.getAttribute("monitorIntervalMs"));
    bean.addConstructorArgReference(monitorBeanName);
    bean.addConstructorArgValue(intervalMs);
}

From source file:org.synyx.hera.core.config.PluginListDefinitionParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext context) {

    BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(getPostProcessorName());
    builder.addPropertyValue("type", element.getAttribute("class"));

    return getSourcedBeanDefinition(builder, element, context);
}

From source file:org.apache.smscserver.config.spring.CommandFactoryBeanDefinitionParser.java

/**
 * {@inheritDoc}/*from w w  w  .  j  a  v  a 2s  . c o  m*/
 */
@SuppressWarnings("unchecked")
@Override
protected void doParse(final Element element, final ParserContext parserContext,
        final BeanDefinitionBuilder builder) {

    BeanDefinitionBuilder factoryBuilder = BeanDefinitionBuilder
            .genericBeanDefinition(CommandFactoryFactory.class);

    ManagedMap commands = new ManagedMap();

    List<Element> childs = SpringUtil.getChildElements(element);

    for (Element commandElm : childs) {
        String name = commandElm.getAttribute("protocol-id");
        Object bean = SpringUtil.parseSpringChildElement(commandElm, parserContext, builder);
        commands.put(name, bean);
    }

    factoryBuilder.addPropertyValue("commandMap", commands);

    if (StringUtils.hasText(element.getAttribute("use-default"))) {
        factoryBuilder.addPropertyValue("useDefaultCommands",
                Boolean.valueOf(element.getAttribute("use-default")));
    }

    BeanDefinition factoryDefinition = factoryBuilder.getBeanDefinition();
    String factoryId = parserContext.getReaderContext().generateBeanName(factoryDefinition);

    BeanDefinitionHolder factoryHolder = new BeanDefinitionHolder(factoryDefinition, factoryId);
    this.registerBeanDefinition(factoryHolder, parserContext.getRegistry());

    // set the factory on the listener bean
    builder.getRawBeanDefinition().setFactoryBeanName(factoryId);
    builder.getRawBeanDefinition().setFactoryMethodName("createCommandFactory");

}

From source file:org.opencredo.couchdb.config.CouchDbOutboundChannelAdapterParser.java

@Override
protected AbstractBeanDefinition parseConsumer(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder builder = BeanDefinitionBuilder
            .genericBeanDefinition(CouchDbSendingMessageHandler.class);
    String databaseUrl = element.getAttribute(COUCHDB_DATABASE_URL_ATTRIBUTE);
    String documentOperations = element.getAttribute(COUCHDB_DOCUMENT_OPERATIONS_ATTRIBUTE);
    String documentIdExpression = element.getAttribute(COUCHDB_DOCUMENT_ID_EXPRESSION_ATTRIBUTE);
    String exeptionsCounter = element.getAttribute(COUCHDB_EXCEPTIONS_COUNTER);

    if (StringUtils.hasText(databaseUrl)) {
        if (StringUtils.hasText(documentOperations)) {
            parserContext.getReaderContext().error("At most one of '" + COUCHDB_DATABASE_URL_ATTRIBUTE
                    + "' and '" + COUCHDB_DOCUMENT_OPERATIONS_ATTRIBUTE + "' may be provided.", element);
        } else {/*  w w w.j  av a2 s .  co m*/
            builder.addConstructorArgValue(databaseUrl);
        }
    } else if (StringUtils.hasText(documentOperations)) {
        builder.addConstructorArgReference(documentOperations);
    } else {
        parserContext.getReaderContext().error("Either '" + COUCHDB_DATABASE_URL_ATTRIBUTE + "' or '"
                + COUCHDB_DOCUMENT_OPERATIONS_ATTRIBUTE + "' must be provided.", element);
    }

    if (StringUtils.hasText(documentIdExpression)) {
        builder.addPropertyValue(COUCHDB_DOCUMENT_ID_EXPRESSION_PROPERTY, documentIdExpression);
    }

    if (StringUtils.hasText(exeptionsCounter)) {
        builder.addPropertyReference("counter", exeptionsCounter);
    }

    return builder.getBeanDefinition();
}