aboutsummaryrefslogtreecommitdiffstats
path: root/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java
diff options
context:
space:
mode:
authorToineSiebelink <toine.siebelink@est.tech>2024-04-09 18:39:51 +0100
committerToineSiebelink <toine.siebelink@est.tech>2024-04-10 11:47:06 +0100
commit693cfdd2467d01bf9a90f588ba827454a7b20f33 (patch)
tree2d9a3e3e587d4b5e7909c4748e1c105b5f1a2483 /cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java
parent868ff64f0f1873518b1a2225e5c35fa89fdc6d33 (diff)
Introduce and handle Operation Too Large Exception for batch operations
Issue-ID: CPS-2164 Signed-off-by: ToineSiebelink <toine.siebelink@est.tech> Change-Id: Iec05d2013be4f971309f0e75d84dc5d0936eb8ef
Diffstat (limited to 'cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java')
-rwxr-xr-xcps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java21
1 files changed, 12 insertions, 9 deletions
diff --git a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java
index 7498c5f6ce..d323691916 100755
--- a/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java
+++ b/cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/exceptions/NetworkCmProxyRestExceptionHandler.java
@@ -1,7 +1,7 @@
/*
* ============LICENSE_START=======================================================
* Copyright (C) 2021 Pantheon.tech
- * Modifications Copyright (C) 2021-2023 Nordix Foundation
+ * Modifications Copyright (C) 2021-2024 Nordix Foundation
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -60,8 +60,7 @@ public class NetworkCmProxyRestExceptionHandler {
* @return response with response code 500.
*/
@ExceptionHandler
- public static ResponseEntity<Object> handleInternalServerErrorExceptions(
- final Exception exception) {
+ public static ResponseEntity<Object> handleInternalServerErrorExceptions(final Exception exception) {
return buildErrorResponse(HttpStatus.INTERNAL_SERVER_ERROR, exception);
}
@@ -73,7 +72,7 @@ public class NetworkCmProxyRestExceptionHandler {
@ExceptionHandler({HttpClientRequestException.class})
public static ResponseEntity<Object> handleClientRequestExceptions(
final HttpClientRequestException httpClientRequestException) {
- return wrapDmiErrorResponse(HttpStatus.BAD_GATEWAY, httpClientRequestException);
+ return wrapDmiErrorResponse(httpClientRequestException);
}
@ExceptionHandler({DmiRequestException.class, DataValidationException.class, OperationNotSupportedException.class,
@@ -88,10 +87,15 @@ public class NetworkCmProxyRestExceptionHandler {
}
@ExceptionHandler({DataNodeNotFoundException.class})
- public static ResponseEntity<Object> handleNotFoundExceptions(final CpsException exception) {
+ public static ResponseEntity<Object> handleNotFoundExceptions(final Exception exception) {
return buildErrorResponse(HttpStatus.NOT_FOUND, exception);
}
+ @ExceptionHandler({PayloadTooLargeException.class})
+ public static ResponseEntity<Object> handlePayloadTooLargeExceptions(final Exception exception) {
+ return buildErrorResponse(HttpStatus.PAYLOAD_TOO_LARGE, exception);
+ }
+
private static ResponseEntity<Object> buildErrorResponse(final HttpStatus status, final Exception exception) {
if (exception.getCause() != null || !(exception instanceof CpsException)) {
log.error("Exception occurred", exception);
@@ -111,15 +115,14 @@ public class NetworkCmProxyRestExceptionHandler {
return new ResponseEntity<>(errorMessage, status);
}
- private static ResponseEntity<Object> wrapDmiErrorResponse(
- final HttpStatus httpStatus,
- final HttpClientRequestException httpClientRequestException) {
+ private static ResponseEntity<Object> wrapDmiErrorResponse(final HttpClientRequestException
+ httpClientRequestException) {
final var dmiErrorMessage = new DmiErrorMessage();
final var dmiErrorResponse = new DmiErrorMessageDmiResponse();
dmiErrorResponse.setHttpCode(httpClientRequestException.getHttpStatus());
dmiErrorResponse.setBody(httpClientRequestException.getDetails());
dmiErrorMessage.setMessage(httpClientRequestException.getMessage());
dmiErrorMessage.setDmiResponse(dmiErrorResponse);
- return new ResponseEntity<>(dmiErrorMessage, httpStatus);
+ return new ResponseEntity<>(dmiErrorMessage, HttpStatus.BAD_GATEWAY);
}
}