feat: Tool metadata register flag and dynamic source updater UI

This commit is contained in:
jade
2026-07-09 23:58:42 +09:00
parent 49585082b3
commit 67b83ff356
7 changed files with 327 additions and 35 deletions

View File

@@ -55,11 +55,24 @@ public class ToolMetadata {
private String podUrl;
// 2-4. 가시성 여부
private boolean visible = true;
@Builder.Default
private Boolean visible = true;
// 2-5. Redis 등록 여부 (UI 표출용)
@Builder.Default
private boolean isRegistered = true;
private Boolean isRegistered = true;
public boolean isVisible() {
return visible != null ? visible : true;
}
public boolean isRegistered() {
return isRegistered != null ? isRegistered : true;
}
public void setRegistered(Boolean isRegistered) {
this.isRegistered = isRegistered;
}
// 3. 연동 아키텍처 구분 (DIRECT / MCI_EAI)
private String integrationType; // 연동 타입: "DIRECT" 또는 "MCI_EAI"

View File

@@ -36,8 +36,24 @@ public class ScaffoldingController {
String moduleName = req.getOrDefault("moduleName", "axhub-tool-other");
String author = req.getOrDefault("author", "System");
String date = req.getOrDefault("date", java.time.LocalDate.now().format(java.time.format.DateTimeFormatter.ofPattern("yyyy.MM.dd")));
boolean register = Boolean.parseBoolean(req.getOrDefault("register", "true"));
return ToolScaffolder.scaffold(baseName, interfaceId, description, group, routingType, moduleName, author, date);
return ToolScaffolder.scaffold(baseName, interfaceId, description, group, routingType, moduleName, author, date, register);
} catch (Exception e) {
return "오류 발생: " + e.getMessage();
}
}
@PostMapping("/tool/update")
public String updateTool(@RequestBody Map<String, String> req) {
try {
String toolName = req.get("toolName");
String domainGroup = req.get("domainGroup");
String description = req.get("description");
boolean register = Boolean.parseBoolean(req.getOrDefault("register", "true"));
io.shinhanlife.axhub.common.util.ToolSourceUpdater.updateToolSource(toolName, domainGroup, description, register);
return "성공";
} catch (Exception e) {
return "오류 발생: " + e.getMessage();
}