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

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

Introduction

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

Prototype

public BeanDefinitionBuilder addPropertyValue(String name, @Nullable Object value) 

Source Link

Document

Add the supplied property value under the given property name.

Usage

From source file:egov.data.hibernate.repository.config.HibernateRepositoryConfigDefinitionParser.java

@Override
protected void postProcessBeanDefinition(HibernateRepositoryConfiguration ctx, BeanDefinitionBuilder builder,
        BeanDefinitionRegistry registry, Object beanSource) {
    String transactionManagerRef = StringUtils.hasText(ctx.getTransactionManagerRef())
            ? ctx.getTransactionManagerRef()
            : DEFAULT_TRANSACTION_MANAGER_BEAN_NAME;
    builder.addPropertyValue(DEFAULT_TRANSACTION_MANAGER_BEAN_NAME, transactionManagerRef);

    String sessionFactoryRef = StringUtils.hasText(ctx.getSessionFactoryRef()) ? ctx.getSessionFactoryRef()
            : DEFAULT_SESSION_FACTORY_BEAN_NAME;
    builder.addPropertyReference(DEFAULT_SESSION_FACTORY_BEAN_NAME, sessionFactoryRef);
}

From source file:org.jmxtrans.embedded.spring.EmbeddedJmxTransBeanDefinitionParser.java

@Override
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
    builder.setRole(BeanDefinition.ROLE_APPLICATION);
    builder.getRawBeanDefinition().setSource(parserContext.extractSource(element));

    if (element.hasAttribute(IGNORE_CONFIGURATION_NOT_FOUND_ATTRIBUTE)) {
        builder.addPropertyValue("ignoreConfigurationNotFound",
                element.getAttribute(IGNORE_CONFIGURATION_NOT_FOUND_ATTRIBUTE));
    }//from  w w  w .  j a  va2  s.  co m
    List<String> configurationUrls = new ArrayList<String>();
    if (element.hasAttribute(CONFIGURATION_ATTRIBUTE)) {
        String configurationUrl = element.getAttribute(CONFIGURATION_ATTRIBUTE);
        logger.debug("Add configuration from attribute {}", configurationUrl);
        configurationUrls.add(configurationUrl);
    }

    NodeList configurationNodeList = element.getElementsByTagNameNS(element.getNamespaceURI(),
            CONFIGURATION_ATTRIBUTE);
    for (int i = 0; i < configurationNodeList.getLength(); i++) {
        Node node = configurationNodeList.item(i);
        if (node instanceof Element) {
            String configurationUrl = node.getTextContent();
            logger.debug("Add configuration from attribute {}", configurationUrl);
            configurationUrls.add(configurationUrl);
        } else {
            throw new EmbeddedJmxTransException("Invalid configuration child element " + node);
        }

    }
    builder.addPropertyValue("configurationUrls", configurationUrls);
}

From source file:org.jboss.seam.spring.namespace.CdiBeanImportBeanDefinitionParser.java

@Override
public AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder cdiBeanFactoryBuilder = BeanDefinitionBuilder
            .rootBeanDefinition(FACTORY_BEAN_CLASS_NAME);
    String beanManagerReference = element.getAttribute(BEAN_MANAGER_REFERENCE);
    if (StringUtils.hasText(beanManagerReference)) {
        cdiBeanFactoryBuilder.addPropertyReference("beanManager", beanManagerReference);
    } else {//from  w  w  w .  j  av a2 s .c  om
        cdiBeanFactoryBuilder.addPropertyReference("beanManager", DEFAULT_BEAN_MANAGER_ID);
    }

    String name = element.getAttribute(NAME_ATTRIBUTE);

    String type = element.getAttribute("type");

    if (!StringUtils.hasText(name) && !StringUtils.hasText(type)) {
        parserContext.getReaderContext()
                .error("A CDI bean reference must specify at least a name or the bean type", element);
    }

    ArrayList<Qualifier> qualifiers = new ArrayList<Qualifier>();

    NodeList children = element.getChildNodes();
    for (int i = 0; i < children.getLength(); i++) {
        Node childNode = children.item(i);
        if (childNode.getNodeType() == Node.ELEMENT_NODE && "qualifier".equals(childNode.getLocalName())) {
            Element qualifierElement = (Element) childNode;
            Qualifier qualifier = new Qualifier();
            Map<String, Object> attributes = new HashMap<String, Object>();
            qualifier.setClassName(qualifierElement.getAttribute("type"));

            if (qualifierElement.hasChildNodes()) {
                NodeList attributeNodes = qualifierElement.getChildNodes();
                for (int j = 0; j < attributeNodes.getLength(); j++) {
                    Node attributeNode = attributeNodes.item(j);
                    if (attributeNode.getNodeType() == Node.ELEMENT_NODE
                            && "attribute".equals(attributeNode.getLocalName())) {
                        Element attributeElement = (Element) attributeNode;
                        String attributeName = attributeElement.getAttribute("name");
                        String attributeValue = attributeElement.getAttribute("value");
                        if (!StringUtils.hasText(attributeName) || !StringUtils.hasText(attributeValue)) {
                            parserContext.getReaderContext().error(
                                    "Qualifier attributes must have both a name and a value", attributeElement);
                        }
                        attributes.put(attributeName, attributeValue);
                    }
                }
            }
            qualifier.setAttributes(attributes);
            qualifiers.add(qualifier);
        }
    }
    if (StringUtils.hasText(name) && !qualifiers.isEmpty()) {
        parserContext.getReaderContext()
                .error("A bean reference must either specify a name or qualifiers but not both", element);
    }

    BeanDefinitionBuilder lookupBuilder = BeanDefinitionBuilder
            .rootBeanDefinition(TYPE_SAFE_BEAN_LOOKUP_CLASS_NAME);
    lookupBuilder.addConstructorArgValue(type);
    lookupBuilder.addPropertyValue("qualifiers", qualifiers);
    AbstractBeanDefinition lookupBeanDefinition = lookupBuilder.getBeanDefinition();
    String lookupBeanName = parserContext.getReaderContext().generateBeanName(lookupBeanDefinition);
    BeanDefinitionReaderUtils.registerBeanDefinition(
            new BeanDefinitionHolder(lookupBeanDefinition, lookupBeanName), parserContext.getRegistry());
    cdiBeanFactoryBuilder.addPropertyReference("cdiBeanLookup", lookupBeanName);

    return cdiBeanFactoryBuilder.getBeanDefinition();
}

From source file:edu.internet2.middleware.shibboleth.common.config.attribute.resolver.attributeDefinition.ScopedAttributeDefinitionBeanDefinitionParser.java

/** {@inheritDoc} */
protected void doParse(String pluginId, Element pluginConfig, Map<QName, List<Element>> pluginConfigChildren,
        BeanDefinitionBuilder pluginBuilder, ParserContext parserContext) {
    super.doParse(pluginId, pluginConfig, pluginConfigChildren, pluginBuilder, parserContext);

    String scope = pluginConfig.getAttributeNS(null, "scope");
    log.debug("Setting scope of attribute definition {} to: {}", pluginId, scope);
    pluginBuilder.addPropertyValue("scope", scope);
}

From source file:net.phoenix.thrift.xml.ArgBeanDefinitionParser.java

@Override
protected void preParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
    Element parent = (Element) element.getParentNode();
    String argsBeanDefinitionName = parent.getAttribute("id");
    String name = element.getAttribute("name");
    builder.addPropertyReference("targetObject", argsBeanDefinitionName);
    builder.addPropertyValue("targetMethod", name);
}

From source file:edu.internet2.middleware.shibboleth.common.config.relyingparty.RelyingPartyGroupBeanDefinitionParser.java

/**
 * Parses the relying party related configuration elements.
 * /*from  w  w w  .j  a v a 2 s .  co  m*/
 * @param configChildren relying party group children
 * @param builder bean definition builder
 * @param parserContext current parsing context
 */
protected void parseRelyingPartyConfiguration(Map<QName, List<Element>> configChildren,
        BeanDefinitionBuilder builder, ParserContext parserContext) {
    List<Element> anonRP = configChildren
            .get(RelyingPartyConfigurationBeanDefinitionParser.ANON_RP_ELEMENT_NAME);
    if (anonRP != null && anonRP.size() > 0) {
        builder.addPropertyValue("anonymousRP",
                SpringConfigurationUtils.parseInnerCustomElement(anonRP.get(0), parserContext));
    }

    List<Element> defaultRP = configChildren
            .get(RelyingPartyConfigurationBeanDefinitionParser.DEFAULT_RP_ELEMENT_NAME);
    builder.addPropertyValue("defaultRP",
            SpringConfigurationUtils.parseInnerCustomElement(defaultRP.get(0), parserContext));

    List<Element> rps = configChildren.get(RelyingPartyConfigurationBeanDefinitionParser.RP_ELEMENT_NAME);
    builder.addPropertyValue("relyingParties",
            SpringConfigurationUtils.parseInnerCustomElements(rps, parserContext));
}

From source file:org.mule.transport.zmq.config.InboundEndpointDefinitionParser.java

public BeanDefinition parseChild(Element element, ParserContext parserContent) {
    BeanDefinitionBuilder builder = BeanDefinitionBuilder
            .rootBeanDefinition(InboundEndpointMessageSource.class.getName());
    String configRef = element.getAttribute("config-ref");
    if ((configRef != null) && (!StringUtils.isBlank(configRef))) {
        builder.addPropertyValue("moduleObject", configRef);
    }//w  w  w . j  a v a  2 s  . c om
    if (element.hasAttribute("exchange-pattern")) {
        builder.addPropertyValue("exchangePattern", element.getAttribute("exchange-pattern"));
    }
    if (element.hasAttribute("socket-operation")) {
        builder.addPropertyValue("socketOperation", element.getAttribute("socket-operation"));
    }
    if ((element.getAttribute("address") != null) && (!StringUtils.isBlank(element.getAttribute("address")))) {
        builder.addPropertyValue("address", element.getAttribute("address"));
    }
    if ((element.getAttribute("filter") != null) && (!StringUtils.isBlank(element.getAttribute("filter")))) {
        builder.addPropertyValue("filter", element.getAttribute("filter"));
    }
    if ((element.getAttribute("identity") != null)
            && (!StringUtils.isBlank(element.getAttribute("identity")))) {
        builder.addPropertyValue("identity", element.getAttribute("identity"));
    }
    if ((element.getAttribute("multipart") != null)
            && (!StringUtils.isBlank(element.getAttribute("multipart")))) {
        builder.addPropertyValue("multipart", element.getAttribute("multipart"));
    }
    if ((element.getAttribute("retryMax") != null)
            && (!StringUtils.isBlank(element.getAttribute("retryMax")))) {
        builder.addPropertyValue("retryMax", element.getAttribute("retryMax"));
    }

    BeanDefinition definition = builder.getBeanDefinition();
    definition.setAttribute(MuleHierarchicalBeanDefinitionParserDelegate.MULE_NO_RECURSE, Boolean.TRUE);
    MutablePropertyValues propertyValues = parserContent.getContainingBeanDefinition().getPropertyValues();

    propertyValues.addPropertyValue("messageSource", definition);

    return definition;
}

From source file:org.solmix.runtime.support.spring.ContainerDefinitionParser.java

@Override
protected void parseElement(ParserContext ctx, BeanDefinitionBuilder bean, Element e, String name) {
    if ("properties".equals(name)) {
        Map<?, ?> map = ctx.getDelegate().parseMapElement(e, bean.getBeanDefinition());
        bean.addPropertyValue("properties", map);
    } else if ("listeners".equals(name)) {
        List<?> lis = ctx.getDelegate().parseListElement(e, bean.getBeanDefinition());
        bean.addPropertyValue("containerListeners", lis);
    }/*from  w ww  .  jav  a 2 s  . c  o m*/
}

From source file:org.zalando.stups.spring.cloud.netflix.feign.OAuth2FeignClientsRegsitrar.java

private BeanDefinitionHolder createBeanDefinition(final AnnotationMetadata annotationMetadata) {
    Map<String, Object> attributes = annotationMetadata
            .getAnnotationAttributes(FeignClient.class.getCanonicalName());

    String className = annotationMetadata.getClassName();
    BeanDefinitionBuilder definition = BeanDefinitionBuilder
            .genericBeanDefinition(TokensFeignClientFactoryBean.class);

    validate(attributes);/*from w  ww .j  av  a  2  s  .c  o  m*/
    definition.addPropertyValue("url", getUrl(attributes));
    definition.addPropertyValue("name", getServiceId(attributes));
    definition.addPropertyValue("type", className);

    String beanName = StringUtils.uncapitalize(className.substring(className.lastIndexOf(".") + 1));
    return new BeanDefinitionHolder(definition.getBeanDefinition(), beanName);
}

From source file:com.turbospaces.namespace.SpaceConfigurationBeanDefinitionParser.java

@Override
protected void doParse(final Element element, final BeanDefinitionBuilder builder) {
    String group = element.getAttribute("group");
    String mappingContext = element.getAttribute("mappingContext");
    String kryo = element.getAttribute("kryo");
    String jChannel = element.getAttribute("jChannel");

    if (StringUtils.hasText(group))
        builder.addPropertyValue("group", group);
    if (StringUtils.hasText(mappingContext))
        builder.addPropertyReference("mappingContext", mappingContext);
    if (StringUtils.hasText(kryo))
        builder.addPropertyReference("kryo", kryo);
    if (StringUtils.hasText(jChannel))
        builder.addPropertyReference("jChannel", jChannel);
}