From 343882e4c49c7c504fa9c33412819b7288c2bc38 Mon Sep 17 00:00:00 2001 From: lawrencehj <1934378145@qq.com> Date: 星期三, 10 三月 2021 14:38:31 +0800 Subject: [PATCH] 修正某些branch不符合GB之处 --- src/main/java/com/genersoft/iot/vmp/vmanager/record/RecordController.java | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/record/RecordController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/record/RecordController.java index 5b947c9..519d299 100644 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/record/RecordController.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/record/RecordController.java @@ -1,9 +1,11 @@ package com.genersoft.iot.vmp.vmanager.record; +import com.genersoft.iot.vmp.gb28181.transmit.callback.RequestMessage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @@ -16,6 +18,7 @@ import com.genersoft.iot.vmp.gb28181.transmit.cmd.impl.SIPCommander; import com.genersoft.iot.vmp.storager.IVideoManagerStorager; +@CrossOrigin @RestController @RequestMapping("/api") public class RecordController { @@ -30,19 +33,27 @@ @Autowired private DeferredResultHolder resultHolder; - - @GetMapping("/record/{deviceId}") - public DeferredResult<ResponseEntity<RecordInfo>> recordinfo(@PathVariable String deviceId, String channelId, String startTime, String endTime){ + + @GetMapping("/record/{deviceId}/{channelId}") + public DeferredResult<ResponseEntity<RecordInfo>> recordinfo(@PathVariable String deviceId,@PathVariable String channelId, String startTime, String endTime){ if (logger.isDebugEnabled()) { - logger.debug(String.format("褰曞儚淇℃伅 API璋冪敤锛宒eviceId锛�%s 锛宻tartTime锛�%s锛� startTime锛�%s",deviceId, startTime, endTime)); + logger.debug(String.format("褰曞儚淇℃伅鏌ヨ API璋冪敤锛宒eviceId锛�%s 锛宻tartTime锛�%s锛� startTime锛�%s",deviceId, startTime, endTime)); } Device device = storager.queryVideoDevice(deviceId); cmder.recordInfoQuery(device, channelId, startTime, endTime); - DeferredResult<ResponseEntity<RecordInfo>> result = new DeferredResult<ResponseEntity<RecordInfo>>(); + // 鎸囧畾瓒呮椂鏃堕棿 1鍒嗛挓30绉� + DeferredResult<ResponseEntity<RecordInfo>> result = new DeferredResult<ResponseEntity<RecordInfo>>(90*1000L); // 褰曞儚鏌ヨ浠hannelId浣滀负deviceId鏌ヨ resultHolder.put(DeferredResultHolder.CALLBACK_CMD_RECORDINFO+channelId, result); + result.onTimeout(()->{ + RequestMessage msg = new RequestMessage(); + msg.setDeviceId(deviceId); + msg.setType(DeferredResultHolder.CALLBACK_CMD_RECORDINFO); + msg.setData("timeout"); + resultHolder.invokeResult(msg); + }); return result; } } -- Gitblit v1.8.0