Added VNFM Simulator project
[so.git] / vnfm-simulator / vnf-service / src / main / java / org / onap / svnfm / simulator / exception / GlobalExceptionHandler.java
diff --git a/vnfm-simulator/vnf-service/src/main/java/org/onap/svnfm/simulator/exception/GlobalExceptionHandler.java b/vnfm-simulator/vnf-service/src/main/java/org/onap/svnfm/simulator/exception/GlobalExceptionHandler.java
new file mode 100644 (file)
index 0000000..a06f2d2
--- /dev/null
@@ -0,0 +1,27 @@
+package org.onap.svnfm.simulator.exception;
+
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.http.converter.HttpMessageNotReadableException;
+import org.springframework.web.HttpMediaTypeNotSupportedException;
+import org.springframework.web.bind.annotation.ControllerAdvice;
+import org.springframework.web.context.request.WebRequest;
+import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler;
+
+@ControllerAdvice
+public class GlobalExceptionHandler extends ResponseEntityExceptionHandler {
+       @Override
+       protected ResponseEntity<Object> handleHttpMessageNotReadable(HttpMessageNotReadableException ex,
+                       HttpHeaders headers, HttpStatus status, WebRequest request) {
+               String error = "Malformed JSON request";
+               return new ResponseEntity<>(error, HttpStatus.BAD_REQUEST);
+       }
+
+       @Override
+       protected ResponseEntity<Object> handleHttpMediaTypeNotSupported(HttpMediaTypeNotSupportedException ex,
+                       HttpHeaders headers, HttpStatus status, WebRequest request) {
+               String error = "Media type Not Supported";
+               return new ResponseEntity<>(error, HttpStatus.UNSUPPORTED_MEDIA_TYPE);
+       }
+}