31 lines
1.1 KiB
Kotlin
31 lines
1.1 KiB
Kotlin
package net.halfbinary.scavengerhuntapi.error
|
|
|
|
import net.halfbinary.scavengerhuntapi.error.exception.InvalidEmailException
|
|
import net.halfbinary.scavengerhuntapi.error.exception.LoginFailedException
|
|
import net.halfbinary.scavengerhuntapi.error.exception.PreexistingAccountException
|
|
import org.springframework.http.HttpStatus
|
|
import org.springframework.web.bind.annotation.ExceptionHandler
|
|
import org.springframework.web.bind.annotation.ResponseStatus
|
|
import org.springframework.web.bind.annotation.RestControllerAdvice
|
|
|
|
@RestControllerAdvice
|
|
class ExceptionHandler {
|
|
|
|
@ExceptionHandler(PreexistingAccountException::class)
|
|
@ResponseStatus(HttpStatus.CONFLICT)
|
|
fun preexistingAccountException(e: PreexistingAccountException): String? {
|
|
return e.message
|
|
}
|
|
|
|
@ExceptionHandler(LoginFailedException::class)
|
|
@ResponseStatus(HttpStatus.UNAUTHORIZED)
|
|
fun loginFailedException(e: LoginFailedException): String? {
|
|
return e.message
|
|
}
|
|
|
|
@ExceptionHandler(InvalidEmailException::class)
|
|
@ResponseStatus(HttpStatus.BAD_REQUEST)
|
|
fun invalidEmailException(e: InvalidEmailException): String? {
|
|
return e.message
|
|
}
|
|
} |