package com.dy.rtuMw.server.mqtt; 
 | 
  
 | 
import com.dy.common.mw.protocol4Mqtt.MqttPubMsg; 
 | 
import com.dy.common.mw.protocol4Mqtt.MqttSubMsg; 
 | 
import com.dy.common.util.Callback; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
  
 | 
/** 
 | 
 * @Author: liurunyu 
 | 
 * @Date: 2025/6/11 17:33 
 | 
 * @Description 
 | 
 */ 
 | 
@Slf4j 
 | 
public class MqttSubMsgDealer implements Callback { 
 | 
    @Override 
 | 
    public void call(Object obj) { 
 | 
        MqttSubMsg subMs = (MqttSubMsg) obj ; 
 | 
        MqttPubMsg pubMs = MqttPubMsgCache.matchFromTail(subMs) ; 
 | 
        if(pubMs != null){ 
 | 
            //匹配到下行消息(命令) 
 | 
            subMs.mqttResultSendWebUrl = pubMs.mqttResultSendWebUrl ; 
 | 
            subMs.commandId = pubMs.commandId ; 
 | 
            try { 
 | 
                MqttComResultCache.getInstance().cacheMqttComResult(new MqttComResultNode(subMs)); 
 | 
            } catch (Exception e) { 
 | 
                log.error("缓存发布消息(命令)结果发生异常", e); 
 | 
            } 
 | 
        } 
 | 
        try{ 
 | 
            MqttSubMsgCache.getInstance().cacheMsg(new MqttSubMsgNode(subMs)); 
 | 
        }catch (Exception e){ 
 | 
            log.error("缓存订阅消息数据发生异常", e); 
 | 
        } 
 | 
    } 
 | 
    @Override 
 | 
    public void call(Object... objs) { 
 | 
    } 
 | 
    @Override 
 | 
    public void exception(Exception e) { 
 | 
    } 
 | 
} 
 |