|  |  |  | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | package com.matrix.config; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.matrix.component.rabbitmq.RabiitMqTemplate; | 
|---|
|  |  |  | import com.matrix.component.rabbitmq.RabiitMqTemplateFactory; | 
|---|
|  |  |  | import com.matrix.core.tools.LogUtil; | 
|---|
|  |  |  | import com.matrix.system.shopXcx.mqTask.*; | 
|---|
|  |  |  | import com.matrix.system.shopXcx.mqTask.OrderOutSotoreTask; | 
|---|
|  |  |  | import com.matrix.system.shopXcx.mqTask.SalesOrderRefundTask; | 
|---|
|  |  |  | import com.matrix.system.shopXcx.mqTask.SalesOrderTask; | 
|---|
|  |  |  | import com.matrix.system.shopXcx.mqTask.TemplateMsgTask; | 
|---|
|  |  |  | import com.matrix.system.wechart.templateMsg.Task.UniformMsgSentTask; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Value; | 
|---|
|  |  |  | import org.springframework.context.annotation.Bean; | 
|---|
|  |  |  | 
|---|
|  |  |  | import java.util.ArrayList; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Configuration | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 小型应用弃用rabbitmq,直接通过观察者模式对消息进行同步消费 参考 AsyncMessageManager | 
|---|
|  |  |  | *//* | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //@Configuration | 
|---|
|  |  |  | public class RabbitMqConfig { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${rabbitmq.host}") | 
|---|
|  |  |  | 
|---|
|  |  |  | public static final String MQ_EXCHANGE_A = "hive_exchange_A"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //订阅模式 | 
|---|
|  |  |  | public static final String MQ_EXCHANGE_FANOUT = "hive_exchange_fanout"; | 
|---|
|  |  |  | public static final String MQ_EXCHANGE_TOPIC = "hive_exchange_fanout"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Bean | 
|---|
|  |  |  | VipCreateTask VipCreateTask() { | 
|---|
|  |  |  | return new VipCreateTask(); | 
|---|
|  |  |  | SalesOrderTask SalesOrderTask() { | 
|---|
|  |  |  | return new SalesOrderTask(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Bean | 
|---|
|  |  |  | OrderTask OrderrCreateTask() { | 
|---|
|  |  |  | return new OrderTask(); | 
|---|
|  |  |  | SalesOrderRefundTask SalesOrderRefundTask() { | 
|---|
|  |  |  | return new SalesOrderRefundTask(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Bean | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //声明一个交换机 | 
|---|
|  |  |  | rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_A+evn, "direct"); | 
|---|
|  |  |  | rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_FANOUT+evn, "fanout"); | 
|---|
|  |  |  | rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_TOPIC +evn, "topic"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<MqTask> taskList = new ArrayList<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //注册RabbitMq任务 | 
|---|
|  |  |  | taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.CREATE_VIP + evn, MQTaskRouting.CREATE_VIP + evn, VipCreateTask())); | 
|---|
|  |  |  | //订阅模式 | 
|---|
|  |  |  | taskList.add(new MqTask(MQ_EXCHANGE_FANOUT + evn, MQTaskRouting.CREATE_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,OrderrCreateTask())); | 
|---|
|  |  |  | taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_TEMPLATE_MSG + evn,MQTaskRouting.SEND_TEMPLATE_MSG + evn, TemplateMsgTask())); | 
|---|
|  |  |  | taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.ORDER_OUT_SOTORE + evn,MQTaskRouting.ORDER_OUT_SOTORE + evn, OrderOutSotoreTask())); | 
|---|
|  |  |  | taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn,MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn, UniformMsgSentTask())); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rabiitMqTemplate.binding(taskList); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | */ | 
|---|