From 3955e6ed53d450f8faf488d4b74ba0c0c83c5aaa Mon Sep 17 00:00:00 2001 From: 648540858 <456panlinlin> Date: 星期二, 12 四月 2022 21:06:21 +0800 Subject: [PATCH] 异步通道刷新,优化ui效果 --- src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/notify/cmd/CatalogNotifyMessageHandler.java | 24 +++++++++++------------- 1 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/notify/cmd/CatalogNotifyMessageHandler.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/notify/cmd/CatalogNotifyMessageHandler.java index e548cfe..419a5c2 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/notify/cmd/CatalogNotifyMessageHandler.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/notify/cmd/CatalogNotifyMessageHandler.java @@ -18,6 +18,7 @@ import javax.sip.header.FromHeader; import javax.sip.message.Response; import java.text.ParseException; +import java.util.ArrayList; import java.util.List; @Component @@ -58,7 +59,8 @@ List<DeviceChannelInPlatform> deviceChannels = storage.queryChannelListInParentPlatform(parentPlatform.getServerGBId()); // 鏌ヨ鍏宠仈鐨勭洿鎾�氶亾 List<GbStream> gbStreams = storage.queryGbStreamListInPlatform(parentPlatform.getServerGBId()); - int size = deviceChannels.size() + gbStreams.size(); + + List<DeviceChannel> allChannels = new ArrayList<>(); // 鍥炲鐩綍淇℃伅 List<PlatformCatalog> catalogs = storage.queryCatalogInPlatform(parentPlatform.getServerGBId()); if (catalogs.size() > 0) { @@ -81,9 +83,7 @@ deviceChannel.setModel("live"); deviceChannel.setOwner("wvp-pro"); deviceChannel.setSecrecy("0"); - cmderFroPlatform.catalogQuery(deviceChannel, parentPlatform, sn, fromHeader.getTag(), size); - // 闃叉鍙戦�佽繃蹇� - Thread.sleep(100); + allChannels.add(deviceChannel); } } // 鍥炲绾ц仈鐨勯�氶亾 @@ -96,9 +96,7 @@ deviceChannel.setParental(0); deviceChannel.setParentId(channel.getCatalogId()); deviceChannel.setCivilCode(parentPlatform.getDeviceGBId().substring(0, 6)); - cmderFroPlatform.catalogQuery(deviceChannel, parentPlatform, sn, fromHeader.getTag(), size); - // 闃叉鍙戦�佽繃蹇� - Thread.sleep(100); + allChannels.add(deviceChannel); } } // 鍥炲鐩存挱鐨勯�氶亾 @@ -123,16 +121,16 @@ deviceChannel.setOwner("wvp-pro"); deviceChannel.setParental(0); deviceChannel.setSecrecy("0"); - cmderFroPlatform.catalogQuery(deviceChannel, parentPlatform, sn, fromHeader.getTag(), size); - // 闃叉鍙戦�佽繃蹇� - Thread.sleep(100); + allChannels.add(deviceChannel); } } - if (size == 0) { + if (allChannels.size() > 0) { + cmderFroPlatform.catalogQuery(allChannels, parentPlatform, sn, fromHeader.getTag()); + }else { // 鍥炲鏃犻�氶亾 - cmderFroPlatform.catalogQuery(null, parentPlatform, sn, fromHeader.getTag(), size); + cmderFroPlatform.catalogQuery(null, parentPlatform, sn, fromHeader.getTag(), 0); } - } catch (SipException | InvalidArgumentException | ParseException | InterruptedException e) { + } catch (SipException | InvalidArgumentException | ParseException e) { e.printStackTrace(); } -- Gitblit v1.8.0