diff --git a/src/main/java/com/xydl/cac/iec/IecClient.java b/src/main/java/com/xydl/cac/iec/IecClient.java index def79a9..30e89d7 100644 --- a/src/main/java/com/xydl/cac/iec/IecClient.java +++ b/src/main/java/com/xydl/cac/iec/IecClient.java @@ -67,6 +67,11 @@ public class IecClient implements ClientEventListener { clientAssociation.enableReporting(urcb); } } + if (!CollectionUtils.isEmpty(serverModel.getBrcbs())) { + for (Brcb brcb : serverModel.getBrcbs()) { + clientAssociation.enableReporting(brcb); + } + } } public void disableReporting() { @@ -78,6 +83,14 @@ public class IecClient implements ClientEventListener { } catch (Exception ignore) { } } + if (!CollectionUtils.isEmpty(serverModel.getBrcbs())) { + try { + for (Brcb brcb : serverModel.getBrcbs()) { + clientAssociation.disableReporting(brcb); + } + } catch (Exception ignore) { + } + } } @Override diff --git a/src/main/java/com/xydl/cac/iec/IecServerService.java b/src/main/java/com/xydl/cac/iec/IecServerService.java index 2e874fa..a4f18fe 100644 --- a/src/main/java/com/xydl/cac/iec/IecServerService.java +++ b/src/main/java/com/xydl/cac/iec/IecServerService.java @@ -24,10 +24,11 @@ public class IecServerService { @Resource IcdTransformService transformService; - IecServer iecServer = new IecServer(transformService); + IecServer iecServer = null; @PostConstruct private void init() { + iecServer = new IecServer(transformService); List list = fileRepository.findBySrvAndStart(Constants.Server, Constants.TRUE); if (!CollectionUtils.isEmpty(list)) { IcdFile icdFile = list.get(0);