diff --git a/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterController.java b/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterController.java index 338f5d5..77dd89d 100644 --- a/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterController.java +++ b/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterController.java @@ -248,7 +248,7 @@ public class AdapterController extends OnlBaseAnnotationController { synchronized (obj) { service.update(adapterGroupUI); - Map resultMap = service.reloadSyncStdMsgAndAdapter(adapterGroupUI.getAdptrbzwkgroupname()); + Map resultMap = service.reloadSyncStdMsgAndAdapter(adapterGroupUI); return ResponseEntity.ok(resultMap); } diff --git a/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterManService.java b/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterManService.java index 7de3d7b..d55875d 100644 --- a/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterManService.java +++ b/src/main/java/com/eactive/eai/rms/onl/manage/adapter/adapter/AdapterManService.java @@ -540,40 +540,52 @@ public class AdapterManService extends OnlBaseService { } } - public Map reloadSyncStdMsgAndAdapter(String adapterGroupName) throws Exception { - - Map result = new HashMap<>(); - - String status = "success"; - - try { - log.debug(">>>>>>>> [Reload Start] 어댑터 그룹명 {}", adapterGroupName); - - CommonCommand pcommand = new CommonCommand( - "com.eactive.eai.agent.adapter.ReloadAdapterPropGroupCommand", - adapterGroupName - ); - agentUtilService.broadcast(pcommand); - - CommonCommand acommand = new CommonCommand( - "com.eactive.eai.agent.adapter.ReloadAdapterGroupCommand", - adapterGroupName - ); - agentUtilService.broadcast(acommand); - - Command stdcommand = new ReloadSTDMessageCommand(); - stdcommand.setArgs("ALL"); + public Map reloadSyncStdMsgAndAdapter(AdapterGroupUI adapterGroupUI) throws Exception { + Map receive = null; + Map result = new HashMap<>(); + String status = "success"; + + try { + log.info(">>>>>> [Reload AdapterManService Start] 리로드 시작"); + + for (Entry entry : adapterGroupUI.getAdapterData().entrySet()) { + AdapterUI adapterUI = entry.getValue(); + String prptyGroupName = adapterUI.getPrptygroupname(); + + CommonCommand pcommand = new CommonCommand( + "com.eactive.eai.agent.adapter.ReloadAdapterPropGroupCommand", + prptyGroupName + ); + agentUtilService.broadcast(pcommand); + } + + // 어댑터 그룹 리로드 + CommonCommand acommand = new CommonCommand( + "com.eactive.eai.agent.adapter.ReloadAdapterGroupCommand", + adapterGroupUI.getAdptrbzwkgroupname() + ); + receive = agentUtilService.broadcast(acommand); + + // HS04 API_FULL_PATH + Command stdcommand = new ReloadSTDMessageCommand(); + stdcommand.setArgs("ALL"); agentUtilService.broadcast(stdcommand); - log.info(">>>>>> [Reload End] 모든 리로드 명령 전송 완료"); - } catch (Exception e) { - status = "error"; - log.error("리로드 실패", e); - } - - result.put("status", status); - return result; + log.info(">>>>>> [Reload AdapterManService End] 리로드 완료"); + } catch (Exception e) { + status = "error"; + log.error("리로드 실패", e); + } + + if (receive != null && receive.values().stream().anyMatch(value -> value == null || !"success".equals(value))) { + status = "error"; + } + + result.put("status", status); + if(receive != null) result.put("message", receive.toString()); + + return result; } public Map reloadSync(AdapterGroupUI adapterGroupUI) throws Exception {