Package org.cloudfoundry.picalc.config

Source Code of org.cloudfoundry.picalc.config.MasterConfiguration

package org.cloudfoundry.picalc.config;

import org.cloudfoundry.picalc.messaging.MasterHandler;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer;
import org.springframework.amqp.rabbit.listener.adapter.MessageListenerAdapter;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MasterConfiguration extends AbstractConfiguration {
 
  @Bean
  public RabbitTemplate rabbitTemplate() {
    RabbitTemplate template = new RabbitTemplate(connectionFactory());
    template.setMessageConverter(jsonMessageConverter());
    template.setRoutingKey(QueueNames.WORK_QUEUE_NAME)
    return template;
  }
 
  @Bean
  public MasterHandler masterHandler() {
    return new MasterHandler();
  }
 

  @Bean
  public SimpleMessageListenerContainer listenerContainer() {
    SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();   
    container.setConnectionFactory(connectionFactory());
    container.setQueueNames(QueueNames.RESULT_QUEUE_NAME);
    MessageListenerAdapter messageListenerAdapter = new MessageListenerAdapter(masterHandler());
    messageListenerAdapter.setMessageConverter(jsonMessageConverter());
    container.setMessageListener(messageListenerAdapter);
    container.setConcurrentConsumers(10);
    return container;
  }
 
  /* comment in if you want also to have workers in the same web app
  @Bean
  public SimpleMessageListenerContainer workerListenerContainer() {
    SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
    container.setConnectionFactory(connectionFactory());
    container.setQueueNames(QueueNames.WORK_QUEUE_NAME);
    MessageListenerAdapter messageListenerAdapter = new MessageListenerAdapter(new WorkerHandler());
    messageListenerAdapter.setMessageConverter(jsonMessageConverter());
    container.setMessageListener(messageListenerAdapter); 
    container.setConcurrentConsumers(10);
    return container;
  }*/
 
TOP

Related Classes of org.cloudfoundry.picalc.config.MasterConfiguration

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.