From 89e370bfdda29ac8a8f7080a18dc09a6ddc75c09 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 26 十月 2020 18:42:16 +0800
Subject: [PATCH] 风行爱奇艺视频更新

---
 src/main/java/com/yeshi/buwan/util/mq/CMQManager.java |   58 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 51 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/yeshi/buwan/util/mq/CMQManager.java b/src/main/java/com/yeshi/buwan/util/mq/CMQManager.java
index f5e76d0..2e2acf7 100644
--- a/src/main/java/com/yeshi/buwan/util/mq/CMQManager.java
+++ b/src/main/java/com/yeshi/buwan/util/mq/CMQManager.java
@@ -1,10 +1,8 @@
 package com.yeshi.buwan.util.mq;
 
+import com.google.gson.Gson;
 import com.qcloud.cmq.Message;
-import com.yeshi.buwan.dto.mq.CMQConsumeMsg;
-import com.yeshi.buwan.dto.mq.FunTVAlbum2MQMsg;
-import com.yeshi.buwan.dto.mq.IqiyiAlbum2MQMsg;
-import com.yeshi.buwan.dto.mq.SolrVideoMQMsg;
+import com.yeshi.buwan.dto.mq.*;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -24,6 +22,12 @@
     //鍒犻櫎瑙嗛璧勬簮
     public static String QUEUENAME_VIDEO_RESOURCE_DELETE = "buwan-video-resource-delete";
 
+    //鏇存柊瑙嗛闄勫姞淇℃伅
+    public static String QUEUENAME_UPDATE_VIDEO_EXTRAINFO = "buwan-video-video-update-extrainfo";
+
+
+    private static String TOPIC_VIDEO_EXTRAINFO = "buwan_topic_video_extrainfo_change";
+
 
     static {
         cmqUtil = CMQUtil.getInstance(secretId, secretKey);
@@ -32,6 +36,18 @@
         cmqUtil.createQueue(QUEUENAME_VIDEO_UPDATE_IQIYI_2, 1024 * 1024);
         cmqUtil.createQueue(QUEUENAME_VIDEO_UPDATE_FUNTV_2, 1024 * 1024);
         cmqUtil.createQueue(QUEUENAME_VIDEO_RESOURCE_DELETE, 1024 * 1024);
+        cmqUtil.createQueue(QUEUENAME_UPDATE_VIDEO_EXTRAINFO, 1024 * 1024);
+
+        //鍒涘缓涓婚
+        cmqUtil.createTopic(TOPIC_VIDEO_EXTRAINFO);
+        //璁㈤槄涓婚
+        try {
+            List<String> filters = new ArrayList<>();
+            filters.add("resource");
+            filters.add("category");
+            cmqUtil.subscribeTopic(TOPIC_VIDEO_EXTRAINFO, TOPIC_VIDEO_EXTRAINFO + "#" + QUEUENAME_UPDATE_VIDEO_EXTRAINFO, QUEUENAME_UPDATE_VIDEO_EXTRAINFO, filters);
+        } catch (Exception e) {
+        }
     }
 
     public static CMQManager getInstance() {
@@ -134,12 +150,12 @@
         cmqUtil.sendMsg(QUEUENAME_VIDEO_RESOURCE_DELETE, videoId);
     }
 
-    public List<CMQConsumeMsg> consumeVideoResourceDeleteMsg(int count) {
-        List<CMQConsumeMsg> list = new ArrayList<>();
+    public List<CMQResult> consumeVideoResourceDeleteMsg(int count) {
+        List<CMQResult> list = new ArrayList<>();
         List<Message> msgList = cmqUtil.recieveMsg(count, QUEUENAME_VIDEO_RESOURCE_DELETE);
         if (msgList != null)
             for (Message msg : msgList) {
-                CMQConsumeMsg mm = new CMQConsumeMsg();
+                CMQResult mm = new CMQResult();
                 mm.setHandler(msg.receiptHandle);
                 mm.setData(msg.msgBody);
                 list.add(mm);
@@ -153,4 +169,32 @@
     }
 
 
+    /**
+     * 瑙嗛闄勫姞淇℃伅鏀瑰彉
+     */
+    public void addVideoExtraInfoChanged(VideoExtraInfoChangeMQMsg msg) {
+        List<String> list = new ArrayList<>();
+        list.add(msg.getType());
+        cmqUtil.publishTopicMessage(TOPIC_VIDEO_EXTRAINFO, new Gson().toJson(msg), list);
+    }
+
+
+    public List<CMQResult> consumeUpdateVideoExtraInfoMsg(int count) {
+        List<CMQResult> list = new ArrayList<>();
+        List<Message> msgList = cmqUtil.recieveMsg(count, QUEUENAME_UPDATE_VIDEO_EXTRAINFO);
+        if (msgList != null)
+            for (Message msg : msgList) {
+                CMQResult mm = new CMQResult();
+                mm.setHandler(msg.receiptHandle);
+                mm.setData(new Gson().fromJson(msg.msgBody, VideoExtraInfoChangeMQMsg.class));
+                list.add(mm);
+            }
+        return list;
+    }
+
+    public void deleteUpdateVideoExtraInfoMsg(String handler) {
+        cmqUtil.deleteMsg(QUEUENAME_UPDATE_VIDEO_EXTRAINFO, handler);
+    }
+
+
 }

--
Gitblit v1.8.0