Example usage for org.springframework.integration.context IntegrationContextUtils ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME

List of usage examples for org.springframework.integration.context IntegrationContextUtils ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME

Introduction

In this page you can find the example usage for org.springframework.integration.context IntegrationContextUtils ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME.

Prototype

String ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME

To view the source code for org.springframework.integration.context IntegrationContextUtils ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME.

Click Source Link

Usage

From source file:org.springframework.integration.config.IntegrationRegistrar.java

/**
 * Register the default {@link CompositeMessageConverter} for argument resolvers
 * during handler method invocation.// www.  j a  va2 s.c om
 * @param registry the registry.
 */
private void registerArgumentResolverMessageConverter(BeanDefinitionRegistry registry) {
    if (!registry
            .containsBeanDefinition(IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME)) {
        BeanDefinitionBuilder postProcessorBuilder = BeanDefinitionBuilder
                .genericBeanDefinition(ConfigurableCompositeMessageConverter.class);
        registry.registerBeanDefinition(IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME,
                postProcessorBuilder.getBeanDefinition());
    }
}

From source file:org.springframework.integration.handler.LambdaMessageProcessor.java

@Override
public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
    this.messageConverter = beanFactory.getBean(
            IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME, MessageConverter.class);
}

From source file:org.springframework.integration.handler.support.MessagingMethodInvokerHelper.java

private synchronized void initialize() throws Exception {
    if (!this.initialized) {
        BeanFactory beanFactory = getBeanFactory();
        if (beanFactory != null && beanFactory
                .containsBean(IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME)) {

            try {
                MessageConverter messageConverter = beanFactory.getBean(
                        IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME,
                        MessageConverter.class);

                this.messageHandlerMethodFactory.setMessageConverter(messageConverter);

                HandlerMethodArgumentResolversHolder handlerMethodArgumentResolversHolder = beanFactory.getBean(
                        this.canProcessMessageList ? IntegrationContextUtils.LIST_ARGUMENT_RESOLVERS_BEAN_NAME
                                : IntegrationContextUtils.ARGUMENT_RESOLVERS_BEAN_NAME,
                        HandlerMethodArgumentResolversHolder.class);

                this.messageHandlerMethodFactory
                        .setCustomArgumentResolvers(handlerMethodArgumentResolversHolder.getResolvers());
            } catch (NoSuchBeanDefinitionException e) {
                configureLocalMessageHandlerFactory();
            }/*from w w w .j av a 2 s.  c  o  m*/
        } else {
            configureLocalMessageHandlerFactory();
        }

        this.messageHandlerMethodFactory.afterPropertiesSet();
        prepareEvaluationContext();
        this.initialized = true;
    }
}

From source file:org.springframework.integration.handler.support.MessagingMethodInvokerHelper.java

private void configureLocalMessageHandlerFactory() {
    MessageConverter messageConverter = null;
    if (getBeanFactory() != null && getBeanFactory()
            .containsBean(IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME)) {
        messageConverter = getBeanFactory().getBean(
                IntegrationContextUtils.ARGUMENT_RESOLVER_MESSAGE_CONVERTER_BEAN_NAME, MessageConverter.class);
        this.messageHandlerMethodFactory.setMessageConverter(messageConverter);
    } else {//from  w  w w .j  ava 2  s. co  m
        messageConverter = new ConfigurableCompositeMessageConverter();
    }
    NullAwarePayloadArgumentResolver nullResolver = new NullAwarePayloadArgumentResolver(messageConverter);
    PayloadExpressionArgumentResolver payloadExpressionArgumentResolver = new PayloadExpressionArgumentResolver();
    payloadExpressionArgumentResolver.setBeanFactory(getBeanFactory());

    PayloadsArgumentResolver payloadsArgumentResolver = new PayloadsArgumentResolver();
    payloadsArgumentResolver.setBeanFactory(getBeanFactory());

    MapArgumentResolver mapArgumentResolver = new MapArgumentResolver();
    mapArgumentResolver.setBeanFactory(getBeanFactory());

    List<HandlerMethodArgumentResolver> customArgumentResolvers = new LinkedList<>();
    customArgumentResolvers.add(payloadExpressionArgumentResolver);
    customArgumentResolvers.add(nullResolver);
    customArgumentResolvers.add(payloadsArgumentResolver);

    if (this.canProcessMessageList) {
        CollectionArgumentResolver collectionArgumentResolver = new CollectionArgumentResolver(true);
        collectionArgumentResolver.setBeanFactory(getBeanFactory());
        customArgumentResolvers.add(collectionArgumentResolver);
    }

    customArgumentResolvers.add(mapArgumentResolver);

    this.messageHandlerMethodFactory.setCustomArgumentResolvers(customArgumentResolvers);
}