diff --git a/src/main/java/com/mirna/hospitalmanagementapi/domain/exceptions/ConsultationValidationException.java b/src/main/java/com/mirna/hospitalmanagementapi/domain/exceptions/ConsultationValidationException.java new file mode 100644 index 0000000..9f55e4c --- /dev/null +++ b/src/main/java/com/mirna/hospitalmanagementapi/domain/exceptions/ConsultationValidationException.java @@ -0,0 +1,8 @@ +package com.mirna.hospitalmanagementapi.domain.exceptions; + +public class ConsultationValidationException extends Exception { + + public ConsultationValidationException(String message) { + super(message); + } +} diff --git a/src/main/java/com/mirna/hospitalmanagementapi/infra/handlers/validation/ConsultationValidationErrorHandler.java b/src/main/java/com/mirna/hospitalmanagementapi/infra/handlers/validation/ConsultationValidationErrorHandler.java new file mode 100644 index 0000000..48d53ff --- /dev/null +++ b/src/main/java/com/mirna/hospitalmanagementapi/infra/handlers/validation/ConsultationValidationErrorHandler.java @@ -0,0 +1,23 @@ +package com.mirna.hospitalmanagementapi.infra.handlers.validation; + +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; + +import com.mirna.hospitalmanagementapi.domain.exceptions.ConsultationValidationException; + +/** + * This @RestControllerAdvice is used to handle errors related to consultation business rules and return appropriate response message + * + * @author Mirna Gama + * @version 1.0 + */ +@RestControllerAdvice +public class ConsultationValidationErrorHandler { + + @ExceptionHandler(ConsultationValidationException.class) + public ResponseEntity handle(ConsultationValidationException exception) { + return new ResponseEntity<>(exception.getMessage(), HttpStatus.BAD_REQUEST); + } +}