diff --git a/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/ComponentLogController.java b/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/ComponentLogController.java index 2cd4c45d1..ff50b5db4 100644 --- a/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/ComponentLogController.java +++ b/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/ComponentLogController.java @@ -12,6 +12,7 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; +import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException; import com.iqser.red.service.persistence.management.v1.processor.service.ComponentLogService; import com.iqser.red.service.persistence.management.v1.processor.service.ComponentOverrideService; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.AuditPersistenceService; @@ -49,6 +50,9 @@ public class ComponentLogController implements ComponentLogResource { @PreAuthorize("hasAuthority('" + GET_RSS + "')") public void addOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody ComponentsOverrides componentsOverrides) { + if (componentsOverrides.getComponentOverrides() == null || componentsOverrides.getComponentOverrides().isEmpty()) { + throw new BadRequestException("Request body cannot be empty!"); + } var componentLog = componentLogService.getComponentLog(dossierId, fileId); var allComponents = componentLog.getComponentLogEntries(); @@ -68,6 +72,9 @@ public class ComponentLogController implements ComponentLogResource { @PreAuthorize("hasAuthority('" + GET_RSS + "')") public void revertOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody RevertOverrideRequest revertOverrideRequest) { + if (revertOverrideRequest.getComponents() == null || revertOverrideRequest.getComponents().isEmpty()) { + throw new BadRequestException("Request body cannot be empty!"); + } var componentLog = componentLogService.getComponentLog(dossierId, fileId); var allComponents = componentLog.getComponentLogEntries(); diff --git a/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/ComponentLogResource.java b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/ComponentLogResource.java index fbda2e7a8..e97a6428c 100644 --- a/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/ComponentLogResource.java +++ b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/ComponentLogResource.java @@ -42,10 +42,10 @@ public interface ComponentLogResource { @ResponseBody - @ResponseStatus(value = HttpStatus.OK) + @ResponseStatus(value = HttpStatus.NO_CONTENT) @PostMapping(value = COMPONENT_LOG_PATH + OVERRIDE_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, consumes = MediaType.APPLICATION_JSON_VALUE) @Operation(summary = "Adds overrides for components", description = "None") - @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) + @ApiResponses(value = {@ApiResponse(responseCode = "204", description = "OK")}) void addOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody ComponentsOverrides componentsOverrides); @@ -58,10 +58,10 @@ public interface ComponentLogResource { @ResponseBody - @ResponseStatus(value = HttpStatus.OK) + @ResponseStatus(value = HttpStatus.NO_CONTENT) @PostMapping(value = COMPONENT_LOG_PATH + OVERRIDE_PATH + "/revert" + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, consumes = MediaType.APPLICATION_JSON_VALUE) @Operation(summary = "Reverts overrides for components", description = "None") - @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) + @ApiResponses(value = {@ApiResponse(responseCode = "204", description = "OK")}) void revertOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody RevertOverrideRequest revertOverrideRequest); }