Example usage for org.springframework.beans.factory.support BeanDefinitionReaderUtils GENERATED_BEAN_NAME_SEPARATOR

List of usage examples for org.springframework.beans.factory.support BeanDefinitionReaderUtils GENERATED_BEAN_NAME_SEPARATOR

Introduction

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

Prototype

String GENERATED_BEAN_NAME_SEPARATOR

To view the source code for org.springframework.beans.factory.support BeanDefinitionReaderUtils GENERATED_BEAN_NAME_SEPARATOR.

Click Source Link

Document

Separator for generated bean names.

Usage

From source file:org.grails.plugin.platform.events.registry.SpringIntegrationEventsRegistry.java

private void initServiceActivatingHandler(ServiceActivatingHandler serviceActivatingHandler,
        ListenerId listener, String topic) {
    if (topic == null || topic.isEmpty()) {
        throw new RuntimeException("topic name must not be null or empty");
    }/*  w w w.j a v a  2 s  .  com*/

    String callBackId = listener.toString();
    serviceActivatingHandler.setBeanName(callBackId);
    serviceActivatingHandler.setChannelResolver(resolver);
    serviceActivatingHandler.setRequiresReply(true);
    serviceActivatingHandler.setOutputChannel(outputChannel);
    String beanIdBase = listener.getClassName();
    int counter = 0;
    String beanId;

    do {
        counter++;
        beanId = beanIdBase + BeanDefinitionReaderUtils.GENERATED_BEAN_NAME_SEPARATOR + counter;
    } while (beanFactory.containsBean(beanId));

    beanFactory.registerSingleton(beanId, serviceActivatingHandler);
    serviceActivatingHandler.afterPropertiesSet();

    SubscribableChannel bridgeChannel = null;
    SubscribableChannel channel = null;
    String channelName = listener.getTopic();

    try {
        bridgeChannel = ctx.getBean(channelName, SubscribableChannel.class);
    } catch (BeansException be) {
        log.debug("no overriding/existing channel found " + be.getMessage());
    }

    if (bridgeChannel == null
            || !bridgeChannel.getClass().isAssignableFrom(GrailsPublishSubscribeChannel.class)) {
        if (bridgeChannel != null) {
            channelName += "-plugin";
        }
        channel = createChannel(channelName);
    } else {
        channel = bridgeChannel;
    }

    channel.subscribe(serviceActivatingHandler);

    if (bridgeChannel != null
            && !bridgeChannel.getClass().isAssignableFrom(GrailsPublishSubscribeChannel.class)) {
        BridgeHandler bridgeHandler = new BridgeHandler();
        bridgeHandler.setOutputChannel(channel);
        bridgeChannel.subscribe(bridgeHandler);
    }

}

From source file:org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.java

@Nullable
private BeanDefinitionHolder parseNestedCustomElement(Element ele, @Nullable BeanDefinition containingBd) {
    BeanDefinition innerDefinition = parseCustomElement(ele, containingBd);
    if (innerDefinition == null) {
        error("Incorrect usage of element '" + ele.getNodeName() + "' in a nested manner. "
                + "This tag cannot be used nested inside <property>.", ele);
        return null;
    }/* w  ww.j  ava2s.  c o  m*/
    String id = ele.getNodeName() + BeanDefinitionReaderUtils.GENERATED_BEAN_NAME_SEPARATOR
            + ObjectUtils.getIdentityHexString(innerDefinition);
    if (logger.isDebugEnabled()) {
        logger.debug(
                "Using generated bean name [" + id + "] for nested custom element '" + ele.getNodeName() + "'");
    }
    return new BeanDefinitionHolder(innerDefinition, id);
}