From eaca4ca8681eb9c3486f1ddebe99756d5ab36505 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 31 七月 2025 14:09:17 +0800
Subject: [PATCH] 优化代码
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/MqttMsgParser.java | 18 +++++++++++++-----
1 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/MqttMsgParser.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/MqttMsgParser.java
index 11cfbd6..5114ad8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/MqttMsgParser.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol4Mqtt/MqttMsgParser.java
@@ -3,6 +3,7 @@
import com.dy.common.mw.protocol.Command;
import com.dy.common.mw.protocol4Mqtt.pSdV1.ProtocolConstantSdV1;
import com.dy.common.mw.protocol4Mqtt.pSdV1.ProtocolParserSdV1;
+import com.dy.common.util.NumUtil;
import org.eclipse.paho.client.mqttv3.MqttMessage;
/**
@@ -14,14 +15,21 @@
public static MqttTopic parseSubTopic(String topic) throws Exception {
if(topic != null && topic.trim().length() != 0){
String[] topicGrp = topic.split("/") ;
- if(topicGrp.length != 4){
+ if(topicGrp.length != 5){
throw new Exception("鎺ユ敹鐨刴qtt娑堟伅涓婚涓嶅彲璇嗗埆") ;
}else{
+ if(!NumUtil.isPlusIntNumber(topicGrp[4])){
+ throw new Exception("鎺ユ敹鐨刴qtt娑堟伅涓婚涓嶅彲璇嗗埆") ;
+ }
+ if(Integer.parseInt(topicGrp[4]) <= 0){
+ throw new Exception("鎺ユ敹鐨刴qtt娑堟伅涓婚涓嶅彲璇嗗埆") ;
+ }
MqttTopic vo = new MqttTopic() ;
vo.orgTag = topicGrp[0] ;
vo.protocol = topicGrp[1] ;
vo.devId = topicGrp[2] ;
- vo.topic = topicGrp[3] ;
+ vo.type = topicGrp[3] ;
+ vo.no = Integer.parseInt(topicGrp[4]) ;
return vo ;
}
}else{
@@ -30,7 +38,7 @@
}
public static String createPubTopic(MqttTopic tp) throws Exception {
- return tp.orgTag + "/" + tp.protocol + "/" + tp.devId + "/" + tp.topic ;
+ return tp.orgTag + "/" + tp.protocol + "/" + tp.devId + "/" + tp.type + "/" + tp.no;
}
public static MqttSubMsg parseSubMsg(MqttTopic subTopic, MqttMessage mqttMsg, MqttCallback callback) throws Exception {
@@ -49,7 +57,7 @@
if(com.protocolVersion == null){
throw new Exception("鎺ユ敹鍒癕QTT鍛戒护锛屼絾鏈彁渚涘崗璁増鏈彿") ;
}
- if(com.code != null && com.code.trim().length() != 0){
+ if(com.code == null || com.code.trim().length() == 0){
throw new Exception("鎺ユ敹鍒癕QTT鍛戒护锛屼絾鏈彁渚涘姛鑳界爜") ;
}
if(com.protocol.equals(ProtocolConstantSdV1.protocolName)){
@@ -65,7 +73,7 @@
public static void main(String[] args) {
- String s = "ym/sd1/10000/control/m1" ;
+ String s = "jyg/sd1/2430002404000840/weather/1" ;
String[] ss = s.split("/") ;
for (String s1 : ss) {
System.out.println(s1);
--
Gitblit v1.8.0