AdminOptiqueApiControllerAdvice.java

  1. package com.sintia.ffl.admin.optique.api.configuration;

  2. import com.sintia.ffl.admin.optique.api.exceptions.BadInternalTokenException;
  3. import org.springframework.http.HttpHeaders;
  4. import org.springframework.http.HttpStatus;
  5. import org.springframework.http.ResponseEntity;
  6. import org.springframework.web.bind.annotation.ControllerAdvice;
  7. import org.springframework.web.bind.annotation.ExceptionHandler;
  8. import org.springframework.web.context.request.WebRequest;
  9. import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler;

  10. /** Gestion centralisée des exceptions **/
  11. @ControllerAdvice
  12. public class AdminOptiqueApiControllerAdvice extends ResponseEntityExceptionHandler {

  13.     /** Gestion centralisée de l'exception levée quand il y a tentative d'appeler un domaine inactif / inexistant **/
  14.     @ExceptionHandler(value = { BadInternalTokenException.class })
  15.     protected ResponseEntity<Object> handleConflict(Exception ex, WebRequest request) {
  16.         return handleExceptionInternal(ex, ex.getMessage(), new HttpHeaders(), HttpStatus.FORBIDDEN, request);
  17.     }

  18. }