From 06db248bc5c90804f7341250f4fa6dc4b6c48cd3 Mon Sep 17 00:00:00 2001 From: pricelees Date: Mon, 14 Jul 2025 12:40:53 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20API=20/=20=EC=97=90=EB=9F=AC=20?= =?UTF-8?q?=EC=9D=91=EB=8B=B5=20=EA=B0=9D=EC=B2=B4=20=EC=BD=94=ED=8B=80?= =?UTF-8?q?=EB=A6=B0=20=EC=A0=84=ED=99=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/dto/response/ErrorResponse.kt | 26 +++++++++------ .../dto/response/RoomEscapeApiResponse.kt | 33 +++++++++++-------- 2 files changed, 36 insertions(+), 23 deletions(-) diff --git a/src/main/java/roomescape/common/dto/response/ErrorResponse.kt b/src/main/java/roomescape/common/dto/response/ErrorResponse.kt index bfa03d71..3d04e3c0 100644 --- a/src/main/java/roomescape/common/dto/response/ErrorResponse.kt +++ b/src/main/java/roomescape/common/dto/response/ErrorResponse.kt @@ -1,15 +1,21 @@ -package roomescape.common.dto.response; +package roomescape.common.dto.response -import io.swagger.v3.oas.annotations.media.Schema; -import roomescape.common.exception.ErrorType; +import io.swagger.v3.oas.annotations.media.Schema +import roomescape.common.exception.ErrorType @Schema(name = "예외 응답", description = "예외 발생 시 응답에 사용됩니다.") -public record ErrorResponse( - @Schema(description = "발생한 예외의 종류", example = "INVALID_REQUEST_DATA") ErrorType errorType, - @Schema(description = "예외 메시지", example = "요청 데이터 값이 올바르지 않습니다.") String message -) { +@JvmRecord +data class ErrorResponse( + @field:Schema(description = "발생한 예외의 종류", example = "INVALID_REQUEST_DATA") + val errorType: ErrorType, - public static ErrorResponse of(ErrorType errorType, String message) { - return new ErrorResponse(errorType, message); - } + @field:Schema(description = "예외 메시지", example = "요청 데이터 값이 올바르지 않습니다.") + val message: String +) { + companion object { + @JvmStatic + fun of(errorType: ErrorType, message: String): ErrorResponse { + return ErrorResponse(errorType, message) + } + } } diff --git a/src/main/java/roomescape/common/dto/response/RoomEscapeApiResponse.kt b/src/main/java/roomescape/common/dto/response/RoomEscapeApiResponse.kt index 89e231d3..15124474 100644 --- a/src/main/java/roomescape/common/dto/response/RoomEscapeApiResponse.kt +++ b/src/main/java/roomescape/common/dto/response/RoomEscapeApiResponse.kt @@ -1,20 +1,27 @@ -package roomescape.common.dto.response; +package roomescape.common.dto.response -import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.media.Schema @Schema(description = "API 응답 시에 사용합니다.") -public record RoomEscapeApiResponse( - @Schema(description = "응답 메시지", defaultValue = SUCCESS_MESSAGE) String message, - @Schema(description = "응답 바디") T data +@JvmRecord +data class RoomEscapeApiResponse( + @field:Schema(description = "응답 메시지", defaultValue = SUCCESS_MESSAGE) + val message: String, + + @field:Schema(description = "응답 바디") + val data: T? = null ) { + companion object { + private const val SUCCESS_MESSAGE = "요청이 성공적으로 수행되었습니다." - private static final String SUCCESS_MESSAGE = "요청이 성공적으로 수행되었습니다."; + @JvmStatic + fun success(data: T): RoomEscapeApiResponse { + return RoomEscapeApiResponse(SUCCESS_MESSAGE, data) + } - public static RoomEscapeApiResponse success(T data) { - return new RoomEscapeApiResponse<>(SUCCESS_MESSAGE, data); - } - - public static RoomEscapeApiResponse success() { - return new RoomEscapeApiResponse<>(SUCCESS_MESSAGE, null); - } + @JvmStatic + fun success(): RoomEscapeApiResponse { + return RoomEscapeApiResponse(SUCCESS_MESSAGE, null) + } + } }