From 54ce629a1cf1aabf7831a33a3a75e47234edffb0 Mon Sep 17 00:00:00 2001 From: Kilian Schuettler Date: Fri, 22 Sep 2023 15:10:18 +0200 Subject: [PATCH 1/2] DM-285: Change component log * apply overrides in ComponentLogService * added a test for manual type change * include overrides in getComponentLog * split AnalysisLogController into EntityLogController and ComponentLogController * fully deprecate RSSController --- .../controller/ComponentLogController.java | 151 ++++++++++++++++++ ...ntroller.java => EntityLogController.java} | 18 +-- .../api/impl/controller/RSSController.java | 3 +- .../resource/ComponentLogResource.java | 67 ++++++++ ...ogResource.java => EntityLogResource.java} | 16 +- .../v1/api/external/resource/RSSResource.java | 4 + .../service/ComponentLogService.java | 7 + 7 files changed, 236 insertions(+), 30 deletions(-) create mode 100644 persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/ComponentLogController.java rename persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/{AnalysisLogController.java => EntityLogController.java} (66%) create mode 100644 persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/ComponentLogResource.java rename persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/{AnalysisLogResource.java => EntityLogResource.java} (67%) 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 new file mode 100644 index 000000000..17665a9a8 --- /dev/null +++ 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 @@ -0,0 +1,151 @@ +package com.iqser.red.persistence.service.v1.external.api.impl.controller; + +import static com.iqser.red.service.persistence.management.v1.processor.roles.ActionRoles.GET_RSS; + +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.stream.Collectors; + +import org.springframework.security.access.prepost.PreAuthorize; +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.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; +import com.iqser.red.service.persistence.service.v1.api.external.resource.ComponentLogResource; +import com.iqser.red.service.persistence.service.v1.api.shared.model.AuditCategory; +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.componentlog.Component; +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.componentlog.ComponentLog; +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.componentlog.ComponentValue; +import com.iqser.red.service.persistence.service.v1.api.shared.model.audit.AuditRequest; +import com.iqser.red.service.persistence.service.v1.api.shared.model.component.ComponentsOverrides; +import com.iqser.red.service.persistence.service.v1.api.shared.model.component.RevertOverrideRequest; +import com.knecon.fforesight.keycloakcommons.security.KeycloakSecurity; + +import lombok.AccessLevel; +import lombok.RequiredArgsConstructor; +import lombok.experimental.FieldDefaults; + +@RestController +@RequiredArgsConstructor +@FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE) +public class ComponentLogController implements ComponentLogResource { + + ComponentLogService componentLogService; + ComponentOverrideService componentOverrideService; + AuditPersistenceService auditPersistenceService; + + + @Override + public ComponentLog getComponentLog(String dossierId, String fileId, boolean includeOverrides) { + + return componentLogService.getComponentLog(dossierId, fileId, includeOverrides); + } + + + @PreAuthorize("hasAuthority('" + GET_RSS + "')") + public void addOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody ComponentsOverrides componentsOverrides) { + + var componentLog = componentLogService.getComponentLog(dossierId, fileId); + var allComponents = componentLog.getComponents(); + + componentOverrideService.addOverrides(dossierId, fileId, componentsOverrides); + + componentsOverrides.getComponentOverrides().forEach((componentName, overrideValue) -> auditOverride(dossierId, fileId, componentName, overrideValue, allComponents)); + } + + + @PreAuthorize("hasAuthority('" + GET_RSS + "')") + public ComponentsOverrides getOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId) { + + return componentOverrideService.getOverrides(dossierId, fileId); + } + + + @PreAuthorize("hasAuthority('" + GET_RSS + "')") + public void revertOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody RevertOverrideRequest revertOverrideRequest) { + + var componentLog = componentLogService.getComponentLog(dossierId, fileId); + var allComponents = componentLog.getComponents(); + + componentOverrideService.revertOverrides(dossierId, fileId, revertOverrideRequest); + + revertOverrideRequest.getComponents().forEach(componentNameToRevert -> auditOverrideRevert(dossierId, fileId, componentNameToRevert, allComponents)); + } + + + private void auditOverride(String dossierId, String fileId, String componentName, String overrideValue, List allComponents) { + + Optional component = allComponents.stream().filter(c -> c.getName().equals(componentName)).findFirst(); + String originalValue = getOriginalValue(component); + String value = getValue(component); + auditPersistenceService.audit(AuditRequest.builder() + .userId(KeycloakSecurity.getUserId()) + .objectId(fileId) + .category(AuditCategory.DOCUMENT.name()) + .message("The component is overwritten with value") + .details(Map.of(DOSSIER_ID, + dossierId, + FILE_ID, + fileId, + "ComponentName", + componentName, + "Action", + "MODIFY", + "OriginalValue", + originalValue, + "OldValue", + value, + "NewValue", + overrideValue)) + .build()); + } + + + private void auditOverrideRevert(String dossierId, String fileId, String componentNameToRevert, List allComponents) { + + Optional component = allComponents.stream().filter(c -> c.getName().equals(componentNameToRevert)).findFirst(); + String originalValue = getOriginalValue(component); + String value = getValue(component); + auditPersistenceService.audit(AuditRequest.builder() + .userId(KeycloakSecurity.getUserId()) + .objectId(fileId) + .category(AuditCategory.DOCUMENT.name()) + .message("The component override for was reverted") + .details(Map.of(DOSSIER_ID, + dossierId, + FILE_ID, + fileId, + "ComponentName", + componentNameToRevert, + "Action", + "REVERT", + "OriginalValue", + originalValue, + "OldValue", + value, + "NewValue", + originalValue)) + .build()); + } + + + private String getValue(Optional component) { + + return component.map(Component::getComponentValues).stream().map(a -> a.stream().map(ComponentValue::getValue).collect(Collectors.joining(", "))).findFirst().orElse(""); + } + + + private static String getOriginalValue(Optional component) { + + return component.map(Component::getComponentValues) + .stream() + .map(a -> a.stream().map(ComponentValue::getOriginalValue).collect(Collectors.joining(", "))) + .findFirst() + .orElse(""); + } + +} 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/AnalysisLogController.java b/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/EntityLogController.java similarity index 66% rename from persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/AnalysisLogController.java rename to persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/EntityLogController.java index 9bf539722..72965545b 100644 --- a/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/AnalysisLogController.java +++ b/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/EntityLogController.java @@ -10,10 +10,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import com.iqser.red.service.persistence.management.v1.processor.service.ComponentLogService; import com.iqser.red.service.persistence.management.v1.processor.service.EntityLogService; -import com.iqser.red.service.persistence.service.v1.api.external.resource.AnalysisLogResource; -import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.componentlog.ComponentLog; +import com.iqser.red.service.persistence.service.v1.api.external.resource.EntityLogResource; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLog; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.FilteredEntityLogRequest; @@ -21,18 +19,15 @@ import lombok.RequiredArgsConstructor; @RestController @RequiredArgsConstructor -public class AnalysisLogController implements AnalysisLogResource { +public class EntityLogController implements EntityLogResource { private final EntityLogService entityLogService; - private final ComponentLogService componentLogService; @PreAuthorize("hasAuthority('" + READ_REDACTION_LOG + "')") public EntityLog getEntityLog(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, - @RequestParam(value = "excludedType", required = false) List excludedTypes, - @RequestParam(value = "withManualRedactions", required = false, defaultValue = "true") boolean withManualRedactions, - @RequestParam(value = "includeFalsePositives", required = false, defaultValue = "false") boolean includeFalsePositives) { + @RequestParam(value = "excludedType", required = false) List excludedTypes) { return entityLogService.getEntityLog(dossierId, fileId, excludedTypes); } @@ -46,11 +41,4 @@ public class AnalysisLogController implements AnalysisLogResource { return entityLogService.getFilteredEntityLog(dossierId, fileId, filteredEntityLogRequest); } - - @Override - public ComponentLog getComponentLog(String dossierId, String fileId, boolean includeOverrides) { - - return componentLogService.getComponentLog(dossierId, fileId, includeOverrides); - } - } 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/RSSController.java b/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/RSSController.java index 46167cafe..b40f111ca 100644 --- a/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/RSSController.java +++ b/persistence-service-v1/persistence-service-external-api-impl-v1/src/main/java/com/iqser/red/persistence/service/v1/external/api/impl/controller/RSSController.java @@ -11,7 +11,6 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import com.knecon.fforesight.keycloakcommons.security.KeycloakSecurity; import com.iqser.red.service.persistence.management.v1.processor.client.redactionreportservice.RssReportClient; import com.iqser.red.service.persistence.management.v1.processor.service.ComponentOverrideService; import com.iqser.red.service.persistence.management.v1.processor.service.persistence.AuditPersistenceService; @@ -23,9 +22,11 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.component.R import com.iqser.red.service.persistence.service.v1.api.shared.model.rss.RSSFileResponse; import com.iqser.red.service.persistence.service.v1.api.shared.model.rss.RSSResponse; import com.iqser.red.service.redaction.report.v1.api.model.rss.DetailedRSSResponse; +import com.knecon.fforesight.keycloakcommons.security.KeycloakSecurity; import lombok.RequiredArgsConstructor; +@Deprecated(forRemoval = true) @RestController @RequiredArgsConstructor public class RSSController implements RSSResource { 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 new file mode 100644 index 000000000..a3bb356f8 --- /dev/null +++ b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/ComponentLogResource.java @@ -0,0 +1,67 @@ +package com.iqser.red.service.persistence.service.v1.api.external.resource; + +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.ResponseStatus; + +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.componentlog.ComponentLog; +import com.iqser.red.service.persistence.service.v1.api.shared.model.component.ComponentsOverrides; +import com.iqser.red.service.persistence.service.v1.api.shared.model.component.RevertOverrideRequest; + +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.responses.ApiResponses; + +@ResponseStatus(value = HttpStatus.OK) +public interface ComponentLogResource { + + String COMPONENT_LOG_PATH = ExternalApi.BASE_PATH + "/componentLog"; + + String OVERRIDE_PATH = "/override"; + + String DOSSIER_ID = "dossierId"; + String DOSSIER_ID_PATH_VARIABLE = "/{" + DOSSIER_ID + "}"; + + String FILE_ID = "fileId"; + + String FILE_ID_PATH_VARIABLE = "/{" + FILE_ID + "}"; + + + @GetMapping(value = COMPONENT_LOG_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, produces = MediaType.APPLICATION_JSON_VALUE) + @Operation(summary = "Gets the component log for a fileId", description = "None") + @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK"), @ApiResponse(responseCode = "400", description = "Request contains error."), @ApiResponse(responseCode = "404", description = "The component log is not found.")}) + ComponentLog getComponentLog(@PathVariable(DOSSIER_ID) String dossierId, + @PathVariable(FILE_ID) String fileId, + @RequestParam(name = "includeOverrides", defaultValue = "true") boolean includeOverrides); + + + @ResponseBody + @ResponseStatus(value = HttpStatus.OK) + @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 RSS components", description = "None") + @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) + void addOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody ComponentsOverrides componentsOverrides); + + + @ResponseBody + @ResponseStatus(value = HttpStatus.OK) + @GetMapping(value = COMPONENT_LOG_PATH + OVERRIDE_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, produces = MediaType.APPLICATION_JSON_VALUE) + @Operation(summary = "Gets overrides for RSS components", description = "None") + @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) + ComponentsOverrides getOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId); + + + @ResponseBody + @ResponseStatus(value = HttpStatus.OK) + @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 RSS components", description = "None") + @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) + void revertOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody RevertOverrideRequest revertOverrideRequest); + +} diff --git a/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/AnalysisLogResource.java b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/EntityLogResource.java similarity index 67% rename from persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/AnalysisLogResource.java rename to persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/EntityLogResource.java index a4c99463a..289537a36 100644 --- a/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/AnalysisLogResource.java +++ b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/EntityLogResource.java @@ -11,7 +11,6 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseStatus; -import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.componentlog.ComponentLog; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLog; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.FilteredEntityLogRequest; @@ -20,10 +19,9 @@ import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.responses.ApiResponses; @ResponseStatus(value = HttpStatus.OK) -public interface AnalysisLogResource { +public interface EntityLogResource { String ENTITY_LOG_PATH = ExternalApi.BASE_PATH + "/entityLog"; - String COMPONENT_LOG_PATH = ExternalApi.BASE_PATH + "/componentLog"; String FILE_ID = "fileId"; String FILE_ID_PATH_VARIABLE = "/{" + FILE_ID + "}"; @@ -37,9 +35,7 @@ public interface AnalysisLogResource { @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK"), @ApiResponse(responseCode = "400", description = "Request contains error."), @ApiResponse(responseCode = "404", description = "The entity log is not found.")}) EntityLog getEntityLog(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, - @RequestParam(value = "excludedType", required = false) List excludedTypes, - @RequestParam(value = "withManualRedactions", required = false, defaultValue = "true") boolean withManualRedactions, - @RequestParam(value = "includeFalsePositives", required = false, defaultValue = "false") boolean includeFalsePositives); + @RequestParam(value = "excludedType", required = false) List excludedTypes); @PostMapping(value = ENTITY_LOG_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE + "/filtered", produces = MediaType.APPLICATION_JSON_VALUE) @@ -49,12 +45,4 @@ public interface AnalysisLogResource { @PathVariable(FILE_ID) String fileId, @RequestBody FilteredEntityLogRequest filteredEntityLogRequest); - - @GetMapping(value = COMPONENT_LOG_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, produces = MediaType.APPLICATION_JSON_VALUE) - @Operation(summary = "Gets the component log for a fileId", description = "None") - @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK"), @ApiResponse(responseCode = "400", description = "Request contains error."), @ApiResponse(responseCode = "404", description = "The component log is not found.")}) - ComponentLog getComponentLog(@PathVariable(DOSSIER_ID) String dossierId, - @PathVariable(FILE_ID) String fileId, - @RequestParam(name = "includeOverrides", defaultValue = "true") boolean includeOverrides); - } diff --git a/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/RSSResource.java b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/RSSResource.java index 919fb7168..74d941076 100644 --- a/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/RSSResource.java +++ b/persistence-service-v1/persistence-service-external-api-v1/src/main/java/com/iqser/red/service/persistence/service/v1/api/external/resource/RSSResource.java @@ -19,6 +19,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.responses.ApiResponses; +@Deprecated(forRemoval = true) @ResponseStatus(value = HttpStatus.OK) public interface RSSResource { @@ -46,6 +47,7 @@ public interface RSSResource { DetailedRSSResponse getDetailedRSS(@PathVariable(DOSSIER_ID) String dossierId, @RequestParam(value = "fileId", required = false) String fileId); + @Deprecated(forRemoval = true) @ResponseBody @ResponseStatus(value = HttpStatus.OK) @PostMapping(value = RSS_PATH + OVERRIDE_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, consumes = MediaType.APPLICATION_JSON_VALUE) @@ -54,6 +56,7 @@ public interface RSSResource { void addOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody ComponentsOverrides componentsOverrides); + @Deprecated(forRemoval = true) @ResponseBody @ResponseStatus(value = HttpStatus.OK) @GetMapping(value = RSS_PATH + OVERRIDE_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, produces = MediaType.APPLICATION_JSON_VALUE) @@ -62,6 +65,7 @@ public interface RSSResource { ComponentsOverrides getOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId); + @Deprecated(forRemoval = true) @ResponseBody @ResponseStatus(value = HttpStatus.OK) @PostMapping(value = RSS_PATH + OVERRIDE_PATH + "/revert" + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, consumes = MediaType.APPLICATION_JSON_VALUE) diff --git a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/ComponentLogService.java b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/ComponentLogService.java index 8c911c4f3..ae997cda4 100644 --- a/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/ComponentLogService.java +++ b/persistence-service-v1/persistence-service-processor-v1/src/main/java/com/iqser/red/service/persistence/management/v1/processor/service/ComponentLogService.java @@ -42,6 +42,13 @@ public class ComponentLogService { } + public ComponentLog getComponentLog(String dossierId, String fileId) { + + return getComponentLog(dossierId, fileId, true); + + } + + private Component applyOverride(Component component, String override) { if (Objects.isNull(override)) { -- 2.47.2 From 3f64fa6c40b612e15187e7948e29d9d3c8c66e2b Mon Sep 17 00:00:00 2001 From: Kilian Schuettler Date: Fri, 22 Sep 2023 15:19:57 +0200 Subject: [PATCH 2/2] DM-285: Change component log * split AnalysisLogController into EntityLogController and ComponentLogController * fully deprecate RSSController --- .../v1/api/external/resource/ComponentLogResource.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 a3bb356f8..fbda2e7a8 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 @@ -44,7 +44,7 @@ public interface ComponentLogResource { @ResponseBody @ResponseStatus(value = HttpStatus.OK) @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 RSS components", description = "None") + @Operation(summary = "Adds overrides for components", description = "None") @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) void addOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody ComponentsOverrides componentsOverrides); @@ -52,7 +52,7 @@ public interface ComponentLogResource { @ResponseBody @ResponseStatus(value = HttpStatus.OK) @GetMapping(value = COMPONENT_LOG_PATH + OVERRIDE_PATH + DOSSIER_ID_PATH_VARIABLE + FILE_ID_PATH_VARIABLE, produces = MediaType.APPLICATION_JSON_VALUE) - @Operation(summary = "Gets overrides for RSS components", description = "None") + @Operation(summary = "Gets overrides for components", description = "None") @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) ComponentsOverrides getOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId); @@ -60,7 +60,7 @@ public interface ComponentLogResource { @ResponseBody @ResponseStatus(value = HttpStatus.OK) @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 RSS components", description = "None") + @Operation(summary = "Reverts overrides for components", description = "None") @ApiResponses(value = {@ApiResponse(responseCode = "200", description = "OK")}) void revertOverrides(@PathVariable(DOSSIER_ID) String dossierId, @PathVariable(FILE_ID) String fileId, @RequestBody RevertOverrideRequest revertOverrideRequest); -- 2.47.2