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