feat: update ToolScaffolder to generate legacy DTOs in 'legacy' and converters in 'converter' package

This commit is contained in:
jade
2026-07-22 09:22:50 +09:00
parent 899053aef5
commit 128fc3d022

View File

@@ -88,9 +88,8 @@ public class ToolScaffolder {
Path serviceDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, "service")); Path serviceDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, "service"));
Path dtoDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, "dto")); Path dtoDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, "dto"));
String shortName = moduleName.replace("dap-tool-", "").replace("-", ""); Path legacyDtoDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, "legacy"));
Path legacyDtoDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, shortName, "dto")); Path converterDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, "converter"));
Path converterDir = rootDir.resolve(Paths.get(moduleName, BASE_PACKAGE_PATH, shortName, "converter"));
Files.createDirectories(serviceDir); Files.createDirectories(serviceDir);
Files.createDirectories(dtoDir); Files.createDirectories(dtoDir);
@@ -253,7 +252,7 @@ public class ToolScaffolder {
import %s.annotation.McpTool; import %s.annotation.McpTool;
import %s.dto.%sReq; import %s.dto.%sReq;
import %s.dto.%sRes; import %s.dto.%sRes;
import %s.%s.converter.%sLegacyConverter; import %s.converter.%sLegacyConverter;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.mapstruct.factory.Mappers; import org.mapstruct.factory.Mappers;
@@ -300,7 +299,7 @@ public class ToolScaffolder {
BASE_PACKAGE, BASE_PACKAGE,
BASE_PACKAGE, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, shortName, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, baseName, BASE_PACKAGE, baseName,
author, author,
createDate, createDate,
@@ -318,12 +317,12 @@ public class ToolScaffolder {
if (!isMci) { if (!isMci) {
String legacyReqContent = """ String legacyReqContent = """
package %s.%s.dto; package %s.legacy;
import lombok.Data; import lombok.Data;
/** /**
* @package %s.%s.dto * @package %s.legacy
* @className %sLegacyReq * @className %sLegacyReq
* @description AX HUB 시스템 처리 클래스 * @description AX HUB 시스템 처리 클래스
* @author %s * @author %s
@@ -340,16 +339,16 @@ public class ToolScaffolder {
public class %sLegacyReq { public class %sLegacyReq {
// TODO: Add legacy request fields here // TODO: Add legacy request fields here
} }
""".formatted(BASE_PACKAGE, shortName, BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, baseName); """.formatted(BASE_PACKAGE, BASE_PACKAGE, baseName, author, createDate, createDate, author, baseName);
Files.writeString(legacyDtoDir.resolve(baseName + "LegacyReq.java"), legacyReqContent); Files.writeString(legacyDtoDir.resolve(baseName + "LegacyReq.java"), legacyReqContent);
String legacyResContent = """ String legacyResContent = """
package %s.%s.dto; package %s.legacy;
import lombok.Data; import lombok.Data;
/** /**
* @package %s.%s.dto * @package %s.legacy
* @className %sLegacyRes * @className %sLegacyRes
* @description AX HUB 시스템 처리 클래스 * @description AX HUB 시스템 처리 클래스
* @author %s * @author %s
@@ -366,22 +365,22 @@ public class ToolScaffolder {
public class %sLegacyRes { public class %sLegacyRes {
// TODO: Add legacy response fields here // TODO: Add legacy response fields here
} }
""".formatted(BASE_PACKAGE, shortName, BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, baseName); """.formatted(BASE_PACKAGE, BASE_PACKAGE, baseName, author, createDate, createDate, author, baseName);
Files.writeString(legacyDtoDir.resolve(baseName + "LegacyRes.java"), legacyResContent); Files.writeString(legacyDtoDir.resolve(baseName + "LegacyRes.java"), legacyResContent);
String converterContent = """ String converterContent = """
package %s.%s.converter; package %s.converter;
import %s.dto.%sReq; import %s.dto.%sReq;
import %s.dto.%sRes; import %s.dto.%sRes;
import %s.%s.dto.%sLegacyReq; import %s.legacy.%sLegacyReq;
import %s.%s.dto.%sLegacyRes; import %s.legacy.%sLegacyRes;
import org.mapstruct.Mapper; import org.mapstruct.Mapper;
import org.mapstruct.Mapping; import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers; import org.mapstruct.factory.Mappers;
/** /**
* @package %s.%s.converter * @package %s.converter
* @className %sLegacyConverter * @className %sLegacyConverter
* @description AX HUB 시스템 처리 클래스 * @description AX HUB 시스템 처리 클래스
* @author %s * @author %s
@@ -402,12 +401,12 @@ public class ToolScaffolder {
%sRes toRes(%sLegacyRes legacyRes); %sRes toRes(%sLegacyRes legacyRes);
} }
""".formatted( """.formatted(
BASE_PACKAGE, shortName, BASE_PACKAGE,
BASE_PACKAGE, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, shortName, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, shortName, baseName, BASE_PACKAGE, baseName,
BASE_PACKAGE, shortName, baseName, author, createDate, createDate, author, BASE_PACKAGE, baseName, author, createDate, createDate, author,
baseName, baseName, baseName, baseName, baseName, baseName baseName, baseName, baseName, baseName, baseName, baseName
); );
Files.writeString(converterDir.resolve(baseName + "LegacyConverter.java"), converterContent); Files.writeString(converterDir.resolve(baseName + "LegacyConverter.java"), converterContent);