From 2f5935ed11672046c37f733d855214f6147b4b58 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 28 三月 2022 11:33:19 +0800
Subject: [PATCH] TDMQ兼容

---
 fanli/src/main/java/com/yeshi/fanli/util/mq/cmq/UserMoneyChangeCMQManager.java |  134 +++++++++++++++++++++++---------------------
 1 files changed, 71 insertions(+), 63 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/mq/cmq/UserMoneyChangeCMQManager.java b/fanli/src/main/java/com/yeshi/fanli/util/mq/cmq/UserMoneyChangeCMQManager.java
index 28cda84..14a611a 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/mq/cmq/UserMoneyChangeCMQManager.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/mq/cmq/UserMoneyChangeCMQManager.java
@@ -4,6 +4,7 @@
 import java.util.List;
 import java.util.Map;
 
+import com.yeshi.fanli.util.Constant;
 import org.yeshi.utils.CMQUtil;
 
 import com.google.gson.Gson;
@@ -13,79 +14,86 @@
 
 public class UserMoneyChangeCMQManager {
 
-	private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25";
-	private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo";
-	private static UserMoneyChangeCMQManager userMoneyChangeCMQManager;
-	private static CMQUtil cmqUtil;
+    private static String secretId = "AKIDTlpgJhLjOozvd6QI2XnpfGbgV4NQJk25";
+    private static String secretKey = "xhCSUHo55oHUQ6XicFcmfIgspX0EEzWo";
+    private static UserMoneyChangeCMQManager userMoneyChangeCMQManager;
+    private static CMQUtil cmqUtil;
+    private static TDMQUtil tdmqUtil;
 
-	private final static String TOPIC_NAME = "topic_user_money";
+    private final static String TOPIC_NAME = "topic_user_money";
 
-	public static String QUEUE_DEBT = TOPIC_NAME + "_" + "debt";
+    public static String QUEUE_DEBT = TOPIC_NAME + "_" + "debt";
 
-	public static String SUBSCRIBE_DEBT = "debt";
+    public static String SUBSCRIBE_DEBT = "debt";
 
-	static {
-		cmqUtil = CMQUtil.getInstance(secretId, secretKey);
-		// 鍒涘缓涓婚锛屾坊鍔犺闃�
-		cmqUtil.createTopic(TOPIC_NAME);
-		// 鐢ㄦ埛鍒歌闃�
-		String[] subscripts = new String[] { SUBSCRIBE_DEBT };
-		String[] queues = new String[] { QUEUE_DEBT };
+    static {
+        cmqUtil = CMQUtil.getInstance(secretId, secretKey);
+        TDMQUtil.getInstance().init(secretId, secretKey, Constant.TDMQ_PUBLIC);
+        tdmqUtil = TDMQUtil.getInstance();
+        // 鍒涘缓涓婚锛屾坊鍔犺闃�
+        tdmqUtil.createTopic(TOPIC_NAME);
+        // 鐢ㄦ埛鍒歌闃�
+        String[] subscripts = new String[]{SUBSCRIBE_DEBT};
+        String[] queues = new String[]{QUEUE_DEBT};
 
-		for (int i = 0; i < subscripts.length; i++) {
-			String queueName = queues[i];
-			try {
-				cmqUtil.createQueue(queueName);
-			} catch (Exception e) {
-			}
-			try {
-				cmqUtil.subscribeTopic(TOPIC_NAME, subscripts[i], queueName);
-			} catch (Exception e) {
+        for (int i = 0; i < subscripts.length; i++) {
+            String queueName = queues[i];
+            try {
+                tdmqUtil.createQueue(queueName);
+            } catch (Exception e) {
+            }
+            try {
+                tdmqUtil.subscribeTopic(TOPIC_NAME, subscripts[i], queueName);
+            } catch (Exception e) {
 
-			}
-		}
-	}
+            }
+        }
+    }
 
-	public static UserMoneyChangeCMQManager getInstance() {
-		if (userMoneyChangeCMQManager == null)
-			userMoneyChangeCMQManager = new UserMoneyChangeCMQManager();
-		return userMoneyChangeCMQManager;
-	}
+    public static UserMoneyChangeCMQManager getInstance() {
+        if (userMoneyChangeCMQManager == null)
+            userMoneyChangeCMQManager = new UserMoneyChangeCMQManager();
+        return userMoneyChangeCMQManager;
+    }
 
-	/**
-	 * 鍙戝竷
-	 * 
-	 * @param history
-	 */
-	public void addUserMoneyChangeMsg(UserMoneyChangeDTO dto) {
-		if (dto == null)
-			return;
-		cmqUtil.publishTopicMessage(TOPIC_NAME, new Gson().toJson(dto));
-		LogHelper.test("璧勯噾娑堟伅鎶曢�掓垚鍔�");
-	}
+    /**
+     * 鍙戝竷
+     *
+     * @param dto
+     */
+    public void addUserMoneyChangeMsg(UserMoneyChangeDTO dto) {
+        if (dto == null)
+            return;
+        tdmqUtil.publishTopicMessage(TOPIC_NAME, new Gson().toJson(dto));
+        LogHelper.test("璧勯噾娑堟伅鎶曢�掓垚鍔�");
+    }
 
-	/**
-	 * 娑堣垂闃熷垪娑堟伅
-	 * 
-	 * @param queueName
-	 * @param count
-	 * @return
-	 */
-	public Map<String, UserMoneyChangeDTO> consumeQueueMsg(String queueName, int count) {
-		List<Message> list = cmqUtil.recieveMsg(count, queueName);
-		Map<String, UserMoneyChangeDTO> map = new HashMap<>();
+    /**
+     * 娑堣垂闃熷垪娑堟伅
+     *
+     * @param queueName
+     * @param count
+     * @return
+     */
+    public Map<String, UserMoneyChangeDTO> consumeQueueMsg(String queueName, int count) {
+        List<Message> list = Constant.TDMQ_CONSUMER ? tdmqUtil.recieveMsg(count, queueName) : cmqUtil.recieveMsg(count, queueName);
+        Map<String, UserMoneyChangeDTO> map = new HashMap<>();
 
-		if (list != null)
-			for (Message msg : list) {
-				String result = msg.msgBody;
-				UserMoneyChangeDTO dto = new Gson().fromJson(result, UserMoneyChangeDTO.class);
-				map.put(msg.receiptHandle, dto);
-			}
-		return map;
-	}
+        if (list != null)
+            for (Message msg : list) {
+                String result = msg.msgBody;
+                UserMoneyChangeDTO dto = new Gson().fromJson(result, UserMoneyChangeDTO.class);
+                map.put(msg.receiptHandle, dto);
+            }
+        return map;
+    }
 
-	public void deleteQueueMsg(String queueName, String receiptHandle) {
-		cmqUtil.deleteMsg(queueName, receiptHandle);
-	}
+    public void deleteQueueMsg(String queueName, String receiptHandle) {
+        if (Constant.TDMQ_CONSUMER) {
+            tdmqUtil.deleteMsg(queueName, receiptHandle);
+        } else {
+            cmqUtil.deleteMsg(queueName, receiptHandle);
+        }
+    }
 
 }

--
Gitblit v1.8.0