admin
2020-10-24 8075103992e9482fddd4a579d97b9a50c5dcf550
src/main/java/com/yeshi/buwan/util/mq/CMQManager.java
@@ -1,6 +1,8 @@
package com.yeshi.buwan.util.mq;
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;
@@ -16,6 +18,11 @@
    public static String QUEUENAME_SOLR = "buwan-solr";
    //视频更新-爱奇艺2
    public static String QUEUENAME_VIDEO_UPDATE_IQIYI_2 = "buwan-video-update-iqiyi2";
    //视频更新-风行2
    public static String QUEUENAME_VIDEO_UPDATE_FUNTV_2 = "buwan-video-update-funtv2";
    //删除视频资源
    public static String QUEUENAME_VIDEO_RESOURCE_DELETE = "buwan-video-resource-delete";
    static {
@@ -23,6 +30,8 @@
        // 最大消息为1M
        cmqUtil.createQueue(QUEUENAME_SOLR, 1024 * 1024);
        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);
    }
    public static CMQManager getInstance() {
@@ -33,12 +42,12 @@
    //添加专辑更新消息
    public void addAlbumUpdateMsg(Long id) {
    public void addIqiyiAlbumUpdateMsg(Long id) {
        cmqUtil.sendMsg(QUEUENAME_VIDEO_UPDATE_IQIYI_2, id + "");
    }
    //消费专辑更新消息
    public List<IqiyiAlbum2MQMsg> consumeAlbumUpdateMsg(int count) {
    public List<IqiyiAlbum2MQMsg> consumeIqiyiAlbumUpdateMsg(int count) {
        List<IqiyiAlbum2MQMsg> list = new ArrayList<>();
        List<Message> msgList = cmqUtil.recieveMsg(count, QUEUENAME_VIDEO_UPDATE_IQIYI_2);
        if (msgList != null)
@@ -52,8 +61,33 @@
    }
    //删除专辑更新消息
    public void deleteAlbumUpdateMsg(String handler) {
    public void deleteIqiyiAlbumUpdateMsg(String handler) {
        cmqUtil.deleteMsg(QUEUENAME_VIDEO_UPDATE_IQIYI_2, handler);
    }
    //添加专辑更新消息
    public void addFunTVAlbumUpdateMsg(String id) {
        cmqUtil.sendMsg(QUEUENAME_VIDEO_UPDATE_FUNTV_2, id);
    }
    //消费专辑更新消息
    public List<FunTVAlbum2MQMsg> consumeFunTVAlbumUpdateMsg(int count) {
        List<FunTVAlbum2MQMsg> list = new ArrayList<>();
        List<Message> msgList = cmqUtil.recieveMsg(count, QUEUENAME_VIDEO_UPDATE_FUNTV_2);
        if (msgList != null)
            for (Message msg : msgList) {
                FunTVAlbum2MQMsg mm = new FunTVAlbum2MQMsg();
                mm.setHandler(msg.receiptHandle);
                mm.setId(msg.msgBody);
                list.add(mm);
            }
        return list;
    }
    //删除专辑更新消息
    public void deleteFunTVAlbumUpdateMsg(String handler) {
        cmqUtil.deleteMsg(QUEUENAME_VIDEO_UPDATE_FUNTV_2, handler);
    }
@@ -89,4 +123,34 @@
        cmqUtil.deleteMsg(QUEUENAME_SOLR, handler);
    }
    /**
     * 删除视频资源
     *
     * @param videoId
     */
    public void addVideoResourceDeleteMsg(String videoId) {
        cmqUtil.sendMsg(QUEUENAME_VIDEO_RESOURCE_DELETE, videoId);
    }
    public List<CMQConsumeMsg> consumeVideoResourceDeleteMsg(int count) {
        List<CMQConsumeMsg> list = new ArrayList<>();
        List<Message> msgList = cmqUtil.recieveMsg(count, QUEUENAME_VIDEO_RESOURCE_DELETE);
        if (msgList != null)
            for (Message msg : msgList) {
                CMQConsumeMsg mm = new CMQConsumeMsg();
                mm.setHandler(msg.receiptHandle);
                mm.setData(msg.msgBody);
                list.add(mm);
            }
        return list;
    }
    public void deleteVideoResourceDeleteMsg(String handler) {
        cmqUtil.deleteMsg(QUEUENAME_VIDEO_RESOURCE_DELETE, handler);
    }
}