| @@ -16,7 +16,7 @@ import javax.annotation.PostConstruct; | |||||
| @Profile(MQConfig.Impl.RABBIT_MQ) | @Profile(MQConfig.Impl.RABBIT_MQ) | ||||
| public class RabbitMqConsumer extends MqBaseConsumer { | public class RabbitMqConsumer extends MqBaseConsumer { | ||||
| //String queueName = "topic-1"; | //String queueName = "topic-1"; | ||||
| String queuenames = ""; | |||||
| private String[] queuenames = null; | |||||
| @Autowired | @Autowired | ||||
| private AmqpAdmin amqpAdmin; | private AmqpAdmin amqpAdmin; | ||||
| @@ -30,10 +30,6 @@ public class RabbitMqConsumer extends MqBaseConsumer { | |||||
| amqpAdmin.declareExchange(exchange); | amqpAdmin.declareExchange(exchange); | ||||
| amqpAdmin.declareQueue(queue); | amqpAdmin.declareQueue(queue); | ||||
| amqpAdmin.declareBinding(binding); | amqpAdmin.declareBinding(binding); | ||||
| queuenames = queuenames +","+topic.getCode(); | |||||
| } | |||||
| if (queuenames.length()>0) { | |||||
| queuenames = queuenames.substring(0, queuenames.length()-1); | |||||
| } | } | ||||
| } | } | ||||
| @@ -46,11 +42,19 @@ public class RabbitMqConsumer extends MqBaseConsumer { | |||||
| @Bean | @Bean | ||||
| public Queue fmRabbitmaQueue(){ | |||||
| return new Queue(queuenames,true); | |||||
| public String[] fmRabbitmaQueues(){ | |||||
| if (null == queuenames) { | |||||
| queuenames = new String[EnumMsgMqTopic.values().length]; | |||||
| int i = 0 ; | |||||
| for (EnumMsgMqTopic topic: EnumMsgMqTopic.values()) { | |||||
| queuenames[i] = topic.getCode(); | |||||
| i ++; | |||||
| } | |||||
| } | |||||
| return queuenames; | |||||
| } | } | ||||
| @RabbitListener(queues = "#{fmRabbitmaQueue.name}") | |||||
| @RabbitListener(queues = {"#{fmRabbitmaQueues}"}) | |||||
| public void onMessage(String message) { | public void onMessage(String message) { | ||||
| doMessage(message); | doMessage(message); | ||||
| } | } | ||||