refactor: API / 에러 응답 객체 Swagger Schema 제거 및 코드 간소화

This commit is contained in:
이상진 2025-07-14 17:05:11 +09:00
parent 98b9655a2f
commit a876516296
2 changed files with 8 additions and 21 deletions

View File

@ -2,26 +2,16 @@ package roomescape.common.dto.response
import io.swagger.v3.oas.annotations.media.Schema import io.swagger.v3.oas.annotations.media.Schema
@Schema(description = "API 응답 시에 사용합니다.") @Schema(name = "API 성공 응답")
@JvmRecord @JvmRecord
data class RoomescapeApiResponse<T>( data class RoomescapeApiResponse<T>(
@field:Schema(description = "응답 메시지", defaultValue = SUCCESS_MESSAGE)
val message: String,
@field:Schema(description = "응답 바디")
val data: T? = null val data: T? = null
) { ) {
companion object { companion object {
private const val SUCCESS_MESSAGE = "요청이 성공적으로 수행되었습니다." @JvmStatic
fun <T> success(data: T): RoomescapeApiResponse<T> = RoomescapeApiResponse(data)
@JvmStatic @JvmStatic
fun <T> success(data: T): RoomescapeApiResponse<T> { fun success(): RoomescapeApiResponse<Void> = RoomescapeApiResponse(null)
return RoomescapeApiResponse(SUCCESS_MESSAGE, data)
}
@JvmStatic
fun success(): RoomescapeApiResponse<Void> {
return RoomescapeApiResponse(SUCCESS_MESSAGE, null)
}
} }
} }

View File

@ -3,19 +3,16 @@ package roomescape.common.dto.response
import io.swagger.v3.oas.annotations.media.Schema import io.swagger.v3.oas.annotations.media.Schema
import roomescape.common.exception.ErrorType import roomescape.common.exception.ErrorType
@Schema(name = "예외 응답", description = "예외 발생 시 응답에 사용됩니다.") @Schema(name = "API 에러 응답")
@JvmRecord @JvmRecord
data class RoomescapeErrorResponse( data class RoomescapeErrorResponse(
@field:Schema(description = "발생한 예외의 종류", example = "INVALID_REQUEST_DATA")
val errorType: ErrorType, val errorType: ErrorType,
@field:Schema(description = "예외 메시지", example = "요청 데이터 값이 올바르지 않습니다.")
val message: String val message: String
) { ) {
companion object { companion object {
@JvmStatic @JvmStatic
fun of(errorType: ErrorType, message: String): RoomescapeErrorResponse { fun of(errorType: ErrorType, message: String? = null): RoomescapeErrorResponse =
return RoomescapeErrorResponse(errorType, message) RoomescapeErrorResponse(errorType, message ?: errorType.description)
}
} }
} }