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:org.jboss.windup.config.spring.namespace.interrogator.InterrogatorExtensionBeanParser.java

@Override
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder
            .rootBeanDefinition(org.springframework.beans.factory.config.MethodInvokingFactoryBean.class);

    InterrogatorTypeEnum interrogatorTarget = InterrogatorTypeEnum.valueOf(element.getAttribute("type"));
    String targetObject = interrogatorTarget.getBeanName();

    LOG.debug("Resolved target extension: " + targetObject);

    beanBuilder.addPropertyReference("targetObject", targetObject);
    beanBuilder.addPropertyValue("targetMethod", "addDecorators");

    // parse list..
    parseDecoratorExtensions(beanBuilder, element, parserContext);
    return beanBuilder.getBeanDefinition();
}

From source file:nats.client.spring.config.NatsBeanDefinitionParser.java

@Override
public BeanDefinition parse(Element element, ParserContext parserContext) {
    final BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(NatsFactoryBean.class);

    // Parse list of hosts
    final List<String> uris = new ManagedList<>();
    final List<Element> hosts = DomUtils.getChildElementsByTagName(element, ELEMENT_URL);
    for (Element host : hosts) {
        uris.add(host.getTextContent());
    }// ww  w.j  a  va  2s . co m
    builder.addPropertyValue("hostUris", uris);

    // Parse list of subscriptions
    final List<BeanDefinition> subscriptions = new ManagedList<>();
    final List<Element> subscriptionElements = DomUtils.getChildElementsByTagName(element,
            ELEMENT_SUBSCRIPTION);
    for (Element subscriptionElement : subscriptionElements) {
        final BeanDefinitionBuilder subscriptionBuilder = BeanDefinitionBuilder
                .genericBeanDefinition(SubscriptionConfig.class);
        subscriptionBuilder.addConstructorArgValue(subscriptionElement.getAttribute(ATTRIBUTE_SUBJECT));
        subscriptionBuilder.addConstructorArgReference(subscriptionElement.getAttribute(ATTRIBUTE_REF));
        subscriptionBuilder.addConstructorArgValue(subscriptionElement.getAttribute(ATTRIBUTE_METHOD));
        subscriptionBuilder.addConstructorArgValue(subscriptionElement.getAttribute(ATTRIBUTE_QUEUE_GROUP));
        subscriptions.add(subscriptionBuilder.getBeanDefinition());
    }
    builder.addPropertyValue("subscriptions", subscriptions);

    // Parse attributes
    builder.addPropertyValue("autoReconnect", element.getAttribute(ATTRIBUTE_AUTO_RECONNECT));
    builder.addPropertyValue("reconnectWaitTime", element.getAttribute(ATTRIBUTE_RECONNECT_WAIT_TIME));
    final String eventLoopGroupRef = element.getAttribute(ATTRIBUTE_EVENT_LOOP_GROUP_REF);
    if (StringUtils.hasText(eventLoopGroupRef)) {
        builder.addPropertyReference("eventLoopGroup", eventLoopGroupRef);
    }
    final String callbackExecutorRef = element.getAttribute(ATTRIBUTE_CALLBACK_EXECUTOR_REF);
    if (StringUtils.hasText(callbackExecutorRef)) {
        builder.addPropertyReference("callbackExecutor", callbackExecutorRef);
    }
    final String connectionStateListenerRef = element.getAttribute(ATTRIBUTE_CONNECTION_STATE_LISTENER_REF);
    if (StringUtils.hasText(connectionStateListenerRef)) {
        builder.addPropertyReference("connectionStateListener", connectionStateListenerRef);
    }

    // Register bean
    final String id = element.getAttribute(ATTRIBUTE_ID);

    final AbstractBeanDefinition beanDefinition = builder.getBeanDefinition();
    parserContext.getRegistry().registerBeanDefinition(id, beanDefinition);

    return beanDefinition;
}

From source file:com.cloudseal.spring.client.namespace.CloudSealBeanDefinitionParserInstance.java

private BeanDefinition createAndRegisterSAMLProcessor() {
    Collection<BeanDefinition> bindings = new ManagedList<BeanDefinition>();
    bindings.add(createRedirectBinding());
    bindings.add(createPostBinding());/* ww  w .j  a va  2  s  .co  m*/

    BeanDefinitionBuilder builder = createBean(SAMLProcessorImpl.class);
    builder.addConstructorArgValue(bindings);
    BeanDefinition bean = builder.getBeanDefinition();
    return registerBean(bean);
}

From source file:com.minderupt.integration.pushmsg.config.APNSPushMessageOutboundChannelAdapterParser.java

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

    BeanDefinitionBuilder builder = BeanDefinitionBuilder
            .genericBeanDefinition(APNSPushMessageSendingMessageHandler.class);

    // get the standard, required attributes
    String certificatePath = element.getAttribute(ParserConstants.ATTRIBUTE_NAME_CERTIFICATE_PATH);
    String apnsHost = element.getAttribute(ParserConstants.ATTRIBUTE_NAME_APNS_HOST);
    Integer apnsPort = Integer.parseInt(element.getAttribute(ParserConstants.ATTRIBUTE_NAME_APNS_PORT));

    // set constructor arguments
    builder.addConstructorArgValue(certificatePath);
    builder.addConstructorArgValue(apnsHost);
    builder.addConstructorArgValue(apnsPort);

    return builder.getBeanDefinition();

}

From source file:com.cloudseal.spring.client.namespace.CloudSealBeanDefinitionParserInstance.java

private BeanDefinition createLogoutSuccessHandler() {
    BeanDefinitionBuilder builder = createBean(SimpleUrlLogoutSuccessHandler.class);
    builder.addPropertyValue("defaultTargetUrl", "/");
    return builder.getBeanDefinition();
}

From source file:com.cloudseal.spring.client.namespace.CloudSealBeanDefinitionParserInstance.java

private BeanDefinition createLogoutHandler() {
    BeanDefinitionBuilder builder = createBean(SecurityContextLogoutHandler.class);
    builder.addPropertyValue("invalidateHttpSession", "true");
    return builder.getBeanDefinition();
}

From source file:com.dinstone.jrpc.spring.spi.ServerBeanDefinitionParser.java

private List<BeanDefinition> getServiceBeanDefinition(Element element, ParserContext parserContext) {
    List<BeanDefinition> sblist = new ManagedList<BeanDefinition>();

    Element services = getChildElement(element, "services");
    if (services != null) {
        NodeList snl = services.getChildNodes();
        for (int i = 0; i < snl.getLength(); i++) {
            Node node = snl.item(i);
            if (node instanceof Element && nodeMatch(node, "service")) {
                Element sn = (Element) node;

                BeanDefinitionBuilder sbd = BeanDefinitionBuilder.genericBeanDefinition(ServiceBean.class);

                String si = sn.getAttribute("interface");
                sbd.addPropertyValue("service", si);

                String so = sn.getAttribute("implement");
                sbd.addPropertyReference("instance", so);

                String sg = sn.getAttribute("group");
                sbd.addPropertyValue("group", sg);

                String st = sn.getAttribute("timeout");
                sbd.addPropertyValue("timeout", st);

                sblist.add(sbd.getBeanDefinition());
            }//w w  w  .j  a  v a  2  s  .com
        }
    }

    return sblist;
}

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

/***/
protected void parseMultiRef(String property, String value, BeanDefinitionBuilder bean,
        ParserContext parserContext) {/*from  w w w  .j  a  v a2 s  .c  o  m*/
    String[] values = value.split("\\s*[,]+\\s*");
    ManagedList<Object> list = null;
    for (int i = 0; i < values.length; i++) {
        String v = values[i];
        if (v != null && v.length() > 0) {
            if (list == null) {
                list = new ManagedList<Object>();
            }
            list.add(new RuntimeBeanReference(v));
        }
    }
    bean.getBeanDefinition().getPropertyValues().addPropertyValue(property, list);
}

From source file:com.dinstone.jrpc.spring.spi.ClientBeanDefinitionParser.java

private BeanDefinition getRegistryBeanDefinition(Element element, ParserContext parserContext) {
    BeanDefinitionBuilder sbd = BeanDefinitionBuilder.genericBeanDefinition(RegistryBean.class);

    Element registry = getChildElement(element, "registry");
    if (registry != null) {
        String schema = registry.getAttribute("schema");
        sbd.addPropertyValue("schema", schema);

        String addresses = registry.getAttribute("addresses");
        sbd.addPropertyValue("addresses", addresses);

        String basePath = registry.getAttribute("basePath");
        if (StringUtils.hasText(basePath)) {
            sbd.addPropertyValue("basePath", basePath);
        }// w  w w .  j a v a  2  s. co m
    }

    return sbd.getBeanDefinition();
}

From source file:com.cloudseal.spring.client.namespace.CloudSealBeanDefinitionParserInstance.java

private BeanDefinition createPostBinding() {
    BeanDefinitionBuilder builder = createBean(HTTPPostBinding.class);
    builder.addConstructorArgValue(parserPool);
    builder.addConstructorArgValue(createVelocityEngine());
    return builder.getBeanDefinition();
}