diff --git a/src/main/java/com/xydl/cac/iec/IecClient.java b/src/main/java/com/xydl/cac/iec/IecClient.java index 73e2553..764d48a 100644 --- a/src/main/java/com/xydl/cac/iec/IecClient.java +++ b/src/main/java/com/xydl/cac/iec/IecClient.java @@ -119,7 +119,11 @@ public class IecClient implements ClientEventListener { } catch (Exception ignore) { } } - log.info("61850停止订阅, ied=" + ied.getName() + ", ip=" + ied.getIp() + ", port=" + ied.getPort()); + if (keep) { + log.warn("61850订阅已断开, ied=" + ied.getName() + ", ip=" + ied.getIp() + ", port=" + ied.getPort()); + } else { + log.info("61850停止订阅, ied=" + ied.getName() + ", ip=" + ied.getIp() + ", port=" + ied.getPort()); + } } public List listFile(String path) throws Exception { @@ -147,7 +151,6 @@ public class IecClient implements ClientEventListener { if (keep) { this.disableReporting(); this.disconnect(); - log.warn("61850订阅已断开, ied=" + ied.getName() + ", ip=" + ied.getIp() + ", port=" + ied.getPort()); while (retry > 0) { retry--; try { diff --git a/src/main/java/com/xydl/cac/iec/RealTimeDataService.java b/src/main/java/com/xydl/cac/iec/RealTimeDataService.java index 42ea894..efe81da 100644 --- a/src/main/java/com/xydl/cac/iec/RealTimeDataService.java +++ b/src/main/java/com/xydl/cac/iec/RealTimeDataService.java @@ -16,10 +16,7 @@ import org.springframework.util.CollectionUtils; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; import javax.annotation.Resource; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Optional; +import java.util.*; @Service @Slf4j @@ -104,9 +101,12 @@ public class RealTimeDataService { @PreDestroy private void stop() { log.info("关闭61850订阅服务."); + List idList = new ArrayList<>(); Iterator it = clientMap.keySet().iterator(); while (it.hasNext()) { - Integer iedId = it.next(); + idList.add(it.next()); + } + for (Integer iedId : idList) { this.onlyStop(iedId); } }