From 2ea1bc8ae165d89fe5fb27bff776ed80798a861a Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期五, 23 九月 2022 23:15:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wvp-dialog' into wvp-dialog
---
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java | 29 +++++++++++++----------------
1 files changed, 13 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java
index 7915319..fa741de 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java
@@ -19,6 +19,7 @@
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Component;
+import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import javax.sip.InvalidArgumentException;
@@ -39,7 +40,7 @@
@Component
public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent implements InitializingBean, IMessageHandler {
- private Logger logger = LoggerFactory.getLogger(RecordInfoResponseMessageHandler.class);
+ private final Logger logger = LoggerFactory.getLogger(RecordInfoResponseMessageHandler.class);
private final String cmdType = "RecordInfo";
private ConcurrentLinkedQueue<HandlerCatchData> taskQueue = new ConcurrentLinkedQueue<>();
@@ -71,7 +72,7 @@
// 鍥炲200 OK
try {
- responseAck(evt, Response.OK);
+ responseAck(getServerTransaction(evt), Response.OK);
taskQueue.offer(new HandlerCatchData(evt, device, rootElement));
if (!taskQueueHandlerRun) {
taskQueueHandlerRun = true;
@@ -80,6 +81,10 @@
try {
HandlerCatchData take = taskQueue.poll();
Element rootElementForCharset = getRootElement(take.getEvt(), take.getDevice().getCharset());
+ if (rootElement == null) {
+ logger.warn("[ 鍥芥爣褰曞儚 ] content cannot be null, {}", evt.getRequest());
+ continue;
+ }
String sn = getText(rootElementForCharset, "SN");
String channelId = getText(rootElementForCharset, "DeviceID");
RecordInfo recordInfo = new RecordInfo();
@@ -89,7 +94,7 @@
recordInfo.setName(getText(rootElementForCharset, "Name"));
String sumNumStr = getText(rootElementForCharset, "SumNum");
int sumNum = 0;
- if (!StringUtils.isEmpty(sumNumStr)) {
+ if (!ObjectUtils.isEmpty(sumNumStr)) {
sumNum = Integer.parseInt(sumNumStr);
}
recordInfo.setSumNum(sumNum);
@@ -142,7 +147,7 @@
}
}
} catch (DocumentException e) {
- throw new RuntimeException(e);
+ logger.error("xml瑙f瀽寮傚父锛� ", e);
} finally {
taskQueueHandlerRun = false;
}
@@ -150,13 +155,9 @@
});
}
- } catch (SipException e) {
- e.printStackTrace();
- } catch (InvalidArgumentException e) {
- e.printStackTrace();
- } catch (ParseException e) {
- e.printStackTrace();
- }finally {
+ } catch (SipException | InvalidArgumentException | ParseException e) {
+ logger.error("[鍛戒护鍙戦�佸け璐 鍥芥爣绾ц仈 鍥芥爣褰曞儚: {}", e.getMessage());
+ } finally {
taskQueueHandlerRun = false;
}
}
@@ -168,16 +169,12 @@
public void releaseRequest(String deviceId, String sn){
String key = DeferredResultHolder.CALLBACK_CMD_RECORDINFO + deviceId + sn;
- WVPResult<RecordInfo> wvpResult = new WVPResult<>();
- wvpResult.setCode(0);
- wvpResult.setMsg("success");
// 瀵规暟鎹繘琛屾帓搴�
Collections.sort(recordDataCatch.getRecordInfo(deviceId, sn).getRecordList());
- wvpResult.setData(recordDataCatch.getRecordInfo(deviceId, sn));
RequestMessage msg = new RequestMessage();
msg.setKey(key);
- msg.setData(wvpResult);
+ msg.setData(recordDataCatch.getRecordInfo(deviceId, sn));
deferredResultHolder.invokeAllResult(msg);
recordDataCatch.remove(deviceId, sn);
}
--
Gitblit v1.8.0