refactor: 커스텀 예외 타입 공통 모듈 이전으로 인한 기존 프로덕션 코드 수정

This commit is contained in:
이상진 2025-09-27 20:48:17 +09:00
parent 00359f63d0
commit a7b3636410
19 changed files with 51 additions and 47 deletions

View File

@ -56,6 +56,7 @@ dependencies {
implementation(project(":common:config")) implementation(project(":common:config"))
implementation(project(":common:persistence")) implementation(project(":common:persistence"))
implementation(project(":common:utils")) implementation(project(":common:utils"))
implementation(project(":common:types"))
} }
tasks.jar { tasks.jar {

View File

@ -1,8 +1,8 @@
package com.sangdol.roomescape.admin.exception package com.sangdol.roomescape.admin.exception
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
class AdminException( class AdminException(
override val errorCode: AdminErrorCode, override val errorCode: AdminErrorCode,

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.auth.exception package com.sangdol.roomescape.auth.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
enum class AuthErrorCode( enum class AuthErrorCode(
override val httpStatus: HttpStatus, override val httpStatus: HttpStatus,

View File

@ -1,6 +1,6 @@
package com.sangdol.roomescape.auth.exception package com.sangdol.roomescape.auth.exception
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class AuthException( class AuthException(
override val errorCode: AuthErrorCode, override val errorCode: AuthErrorCode,

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.common.dto.response package com.sangdol.roomescape.common.dto.response
import com.fasterxml.jackson.annotation.JsonInclude import com.fasterxml.jackson.annotation.JsonInclude
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
@JsonInclude(JsonInclude.Include.NON_NULL) @JsonInclude(JsonInclude.Include.NON_NULL)
data class CommonApiResponse<T>( data class CommonApiResponse<T>(

View File

@ -1,21 +1,24 @@
package com.sangdol.roomescape.common.exception package com.sangdol.roomescape.common.exception
import io.github.oshai.kotlinlogging.KLogger import com.sangdol.common.types.exception.CommonErrorCode
import io.github.oshai.kotlinlogging.KotlinLogging import com.sangdol.common.types.exception.ErrorCode
import jakarta.servlet.http.HttpServletRequest import com.sangdol.common.types.exception.RoomescapeException
import org.slf4j.MDC import com.sangdol.common.types.web.HttpStatus
import org.springframework.http.HttpStatus
import org.springframework.http.ResponseEntity
import org.springframework.http.converter.HttpMessageNotReadableException
import org.springframework.web.bind.MethodArgumentNotValidException
import org.springframework.web.bind.annotation.ExceptionHandler
import org.springframework.web.bind.annotation.RestControllerAdvice
import com.sangdol.roomescape.auth.exception.AuthException import com.sangdol.roomescape.auth.exception.AuthException
import com.sangdol.roomescape.common.dto.response.CommonErrorResponse import com.sangdol.roomescape.common.dto.response.CommonErrorResponse
import com.sangdol.roomescape.common.log.ApiLogMessageConverter import com.sangdol.roomescape.common.log.ApiLogMessageConverter
import com.sangdol.roomescape.common.log.ConvertResponseMessageRequest import com.sangdol.roomescape.common.log.ConvertResponseMessageRequest
import com.sangdol.roomescape.common.log.LogType import com.sangdol.roomescape.common.log.LogType
import com.sangdol.roomescape.common.log.getEndpoint import com.sangdol.roomescape.common.log.getEndpoint
import io.github.oshai.kotlinlogging.KLogger
import io.github.oshai.kotlinlogging.KotlinLogging
import jakarta.servlet.http.HttpServletRequest
import org.slf4j.MDC
import org.springframework.http.ResponseEntity
import org.springframework.http.converter.HttpMessageNotReadableException
import org.springframework.web.bind.MethodArgumentNotValidException
import org.springframework.web.bind.annotation.ExceptionHandler
import org.springframework.web.bind.annotation.RestControllerAdvice
private val log: KLogger = KotlinLogging.logger {} private val log: KLogger = KotlinLogging.logger {}
@ -42,7 +45,7 @@ class ExceptionControllerAdvice(
) )
return ResponseEntity return ResponseEntity
.status(httpStatus) .status(httpStatus.value())
.body(errorResponse) .body(errorResponse)
} }
@ -73,7 +76,7 @@ class ExceptionControllerAdvice(
) )
return ResponseEntity return ResponseEntity
.status(httpStatus) .status(httpStatus.value())
.body(errorResponse) .body(errorResponse)
} }
@ -97,7 +100,7 @@ class ExceptionControllerAdvice(
) )
return ResponseEntity return ResponseEntity
.status(httpStatus) .status(httpStatus.value())
.body(errorResponse) .body(errorResponse)
} }

View File

@ -6,8 +6,8 @@ import org.springframework.stereotype.Component
import org.springframework.transaction.PlatformTransactionManager import org.springframework.transaction.PlatformTransactionManager
import org.springframework.transaction.TransactionDefinition import org.springframework.transaction.TransactionDefinition
import org.springframework.transaction.support.TransactionTemplate import org.springframework.transaction.support.TransactionTemplate
import com.sangdol.roomescape.common.exception.CommonErrorCode import com.sangdol.common.types.exception.CommonErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
private val log: KLogger = KotlinLogging.logger {} private val log: KLogger = KotlinLogging.logger {}

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.payment.exception package com.sangdol.roomescape.payment.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
enum class PaymentErrorCode( enum class PaymentErrorCode(
override val httpStatus: HttpStatus, override val httpStatus: HttpStatus,

View File

@ -1,6 +1,6 @@
package com.sangdol.roomescape.payment.exception package com.sangdol.roomescape.payment.exception
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class PaymentException( class PaymentException(
override val errorCode: PaymentErrorCode, override val errorCode: PaymentErrorCode,

View File

@ -1,6 +1,8 @@
package com.sangdol.roomescape.payment.infrastructure.client package com.sangdol.roomescape.payment.infrastructure.client
import com.fasterxml.jackson.databind.ObjectMapper import com.fasterxml.jackson.databind.ObjectMapper
import com.sangdol.roomescape.payment.exception.PaymentErrorCode
import com.sangdol.roomescape.payment.exception.PaymentException
import io.github.oshai.kotlinlogging.KLogger import io.github.oshai.kotlinlogging.KLogger
import io.github.oshai.kotlinlogging.KotlinLogging import io.github.oshai.kotlinlogging.KotlinLogging
import org.springframework.http.HttpMethod import org.springframework.http.HttpMethod
@ -10,8 +12,6 @@ import org.springframework.http.client.ClientHttpResponse
import org.springframework.stereotype.Component import org.springframework.stereotype.Component
import org.springframework.web.client.ResponseErrorHandler import org.springframework.web.client.ResponseErrorHandler
import org.springframework.web.client.RestClient import org.springframework.web.client.RestClient
import com.sangdol.roomescape.payment.exception.PaymentErrorCode
import com.sangdol.roomescape.payment.exception.PaymentException
import java.net.URI import java.net.URI
private val log: KLogger = KotlinLogging.logger {} private val log: KLogger = KotlinLogging.logger {}

View File

@ -1,8 +1,8 @@
package com.sangdol.roomescape.region.exception package com.sangdol.roomescape.region.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class RegionException( class RegionException(
override val errorCode: RegionErrorCode, override val errorCode: RegionErrorCode,

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.reservation.exception package com.sangdol.roomescape.reservation.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
enum class ReservationErrorCode( enum class ReservationErrorCode(
override val httpStatus: HttpStatus, override val httpStatus: HttpStatus,

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.reservation.exception package com.sangdol.roomescape.reservation.exception
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class ReservationException( class ReservationException(
override val errorCode: ErrorCode, override val errorCode: ErrorCode,

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.schedule.exception package com.sangdol.roomescape.schedule.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
enum class ScheduleErrorCode( enum class ScheduleErrorCode(
override val httpStatus: HttpStatus, override val httpStatus: HttpStatus,

View File

@ -1,5 +1,5 @@
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class ScheduleException( class ScheduleException(
override val errorCode: ErrorCode, override val errorCode: ErrorCode,

View File

@ -1,8 +1,8 @@
package com.sangdol.roomescape.store.exception package com.sangdol.roomescape.store.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class StoreException( class StoreException(
override val errorCode: StoreErrorCode, override val errorCode: StoreErrorCode,

View File

@ -1,7 +1,7 @@
package com.sangdol.roomescape.theme.exception package com.sangdol.roomescape.theme.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
enum class ThemeErrorCode( enum class ThemeErrorCode(
override val httpStatus: HttpStatus, override val httpStatus: HttpStatus,

View File

@ -1,6 +1,6 @@
package com.sangdol.roomescape.theme.exception package com.sangdol.roomescape.theme.exception
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class ThemeException( class ThemeException(
override val errorCode: ThemeErrorCode, override val errorCode: ThemeErrorCode,

View File

@ -1,8 +1,8 @@
package com.sangdol.roomescape.user.exception package com.sangdol.roomescape.user.exception
import org.springframework.http.HttpStatus import com.sangdol.common.types.web.HttpStatus
import com.sangdol.roomescape.common.exception.ErrorCode import com.sangdol.common.types.exception.ErrorCode
import com.sangdol.roomescape.common.exception.RoomescapeException import com.sangdol.common.types.exception.RoomescapeException
class UserException( class UserException(
override val errorCode: UserErrorCode, override val errorCode: UserErrorCode,