diff --git a/redaction-service-v1/redaction-service-server-v1/build.gradle.kts b/redaction-service-v1/redaction-service-server-v1/build.gradle.kts index 57cff282..cc7bcb4c 100644 --- a/redaction-service-v1/redaction-service-server-v1/build.gradle.kts +++ b/redaction-service-v1/redaction-service-server-v1/build.gradle.kts @@ -16,7 +16,7 @@ val layoutParserVersion = "0.74.0" val jacksonVersion = "2.15.2" val droolsVersion = "9.44.0.Final" val pdfBoxVersion = "3.0.0" -val persistenceServiceVersion = "2.223.0" +val persistenceServiceVersion = "2.229.0" configurations { all { diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/AnalyzeService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/AnalyzeService.java index 7ac037c7..7dbf0dbf 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/AnalyzeService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/AnalyzeService.java @@ -18,7 +18,6 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.RuleFileTyp 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.EntityLogChanges; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Comment; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileType; import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.legalbasis.LegalBasis; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.RedactionLog; @@ -112,7 +111,9 @@ public class AnalyzeService { startTime, kieContainerCreationService.getLatestKieContainer(analyzeRequest.getDossierTemplateId(), RuleFileType.COMPONENT), entityLogCreatorService.updateVersionsAndReturnChanges(previousEntityLog, - dictionaryIncrement.getDictionaryVersion(), analyzeRequest.getDossierTemplateId(), false), document, + dictionaryIncrement.getDictionaryVersion(), + analyzeRequest.getDossierTemplateId(), + false), document, previousRedactionLog, document.getNumberOfPages(), dictionaryIncrement.getDictionaryVersion(), @@ -153,7 +154,10 @@ public class AnalyzeService { dictionary.getVersion()); return finalizeAnalysis(analyzeRequest, - startTime, kieContainerCreationService.getLatestKieContainer(analyzeRequest.getDossierTemplateId(), RuleFileType.COMPONENT), entityLogChanges, document, + startTime, + kieContainerCreationService.getLatestKieContainer(analyzeRequest.getDossierTemplateId(), RuleFileType.COMPONENT), + entityLogChanges, + document, redactionLog, document.getNumberOfPages(), dictionaryIncrement.getDictionaryVersion(), @@ -222,9 +226,7 @@ public class AnalyzeService { Set sectionsToReanalyseIds) { List newRedactionLogEntries = redactionLogCreatorService.createRedactionLog(document, - analyzeRequest.getDossierTemplateId(), - notFoundManualRedactionEntries, - getComments(analyzeRequest)); + analyzeRequest.getDossierTemplateId(), notFoundManualRedactionEntries); var importedRedactionFilteredEntries = importedRedactionService.processImportedRedactions(analyzeRequest.getDossierTemplateId(), analyzeRequest.getDossierId(), @@ -375,9 +377,7 @@ public class AnalyzeService { KieWrapper wrapper) { List redactionLogEntries = redactionLogCreatorService.createRedactionLog(document, - analyzeRequest.getDossierTemplateId(), - notFoundManualRedactionEntries, - getComments(analyzeRequest)); + analyzeRequest.getDossierTemplateId(), notFoundManualRedactionEntries); List legalBasis = legalBasisClient.getLegalBasisMapping(analyzeRequest.getDossierTemplateId()); RedactionLog redactionLog = new RedactionLog(redactionServiceSettings.getAnalysisVersion(), @@ -399,18 +399,6 @@ public class AnalyzeService { } - private static Map> getComments(AnalyzeRequest analyzeRequest) { - - if (analyzeRequest.getManualRedactions() == null) { - return Collections.emptyMap(); - } - if (analyzeRequest.getManualRedactions().getComments() == null) { - return Collections.emptyMap(); - } - return analyzeRequest.getManualRedactions().getComments(); - } - - public List toRedactionLogLegalBasis(List legalBasis) { return legalBasis.stream().map(l -> new RedactionLogLegalBasis(l.getName(), l.getDescription(), l.getReason())).collect(Collectors.toList()); diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java index 6f971f7a..5ca944c1 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/EntityLogCreatorService.java @@ -1,5 +1,7 @@ package com.iqser.red.service.redaction.v1.server.service; +import static com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntryType.IMAGE; + import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; @@ -205,8 +207,7 @@ public class EntityLogCreatorService { .section(image.getManualOverwrite().getSection().orElse(image.getParent().toString())) .imageHasTransparency(image.isTransparent()) .manualChanges(manualChangeFactory.toManualChangeList(image.getManualOverwrite().getManualChangeLog(), isHint)) - .state(buildEntryState(image)) - .entryType(buildEntryType(image)) + .state(buildEntryState(image)).entryType(isHint ? EntryType.IMAGE_HINT : EntryType.IMAGE) .build(); } @@ -312,12 +313,10 @@ public class EntityLogCreatorService { if (entity instanceof TextEntity textEntity) { return getEntryType(textEntity.getEntityType()); } else if (entity instanceof ManualEntity manualEntity) { - if (((ManualEntity) entity).isRectangle()) { + if (manualEntity.isRectangle()) { return EntryType.AREA; } return getEntryType(manualEntity.getEntityType()); - } else if (entity instanceof Image) { - return EntryType.IMAGE; } throw new UnsupportedOperationException(String.format("Entity subclass %s is not implemented!", entity.getClass())); } diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RedactionLogCreatorService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RedactionLogCreatorService.java index 09d8ea52..78a6d4d2 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RedactionLogCreatorService.java +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/service/RedactionLogCreatorService.java @@ -6,7 +6,6 @@ import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Locale; -import java.util.Map; import java.util.Objects; import java.util.Set; import java.util.stream.Collectors; @@ -15,13 +14,11 @@ import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Comment; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.Engine; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.ManualChange; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.ManualRedactionType; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.Point; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.Rectangle; -import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.RedactionLogComment; import com.iqser.red.service.persistence.service.v1.api.shared.model.redactionlog.RedactionLogEntry; import com.iqser.red.service.redaction.v1.server.model.ManualEntity; import com.iqser.red.service.redaction.v1.server.model.document.entity.EntityType; @@ -47,17 +44,14 @@ public class RedactionLogCreatorService { public List createRedactionLog(Document document, - String dossierTemplateId, - List notFoundManualRedactionEntries, - Map> comments) { + String dossierTemplateId, List notFoundManualRedactionEntries) { List entries = new ArrayList<>(); Set processIds = new HashSet<>(); document.getEntities().stream().filter(RedactionLogCreatorService::notFalsePositiveOrFalseRecommendation) - .filter(IEntity::active) - .forEach(entityNode -> entries.addAll(toRedactionLogEntries(entityNode, dossierTemplateId, comments, processIds))); - document.streamAllImages().filter(image -> !image.removed()).forEach(imageNode -> entries.add(createRedactionLogEntry(imageNode, dossierTemplateId, comments))); - notFoundManualRedactionEntries.forEach(entityIdentifier -> entries.add(createRedactionLogEntry(entityIdentifier, dossierTemplateId, comments))); + .filter(IEntity::active).forEach(entityNode -> entries.addAll(toRedactionLogEntries(entityNode, dossierTemplateId, processIds))); + document.streamAllImages().filter(image -> !image.removed()).forEach(imageNode -> entries.add(createRedactionLogEntry(imageNode, dossierTemplateId))); + notFoundManualRedactionEntries.forEach(entityIdentifier -> entries.add(createRedactionLogEntry(entityIdentifier, dossierTemplateId))); return entries; } @@ -68,7 +62,7 @@ public class RedactionLogCreatorService { } - private List toRedactionLogEntries(TextEntity textEntity, String dossierTemplateId, Map> comments, Set processedIds) { + private List toRedactionLogEntries(TextEntity textEntity, String dossierTemplateId, Set processedIds) { List redactionLogEntities = new ArrayList<>(); @@ -82,7 +76,6 @@ public class RedactionLogCreatorService { RedactionLogEntry redactionLogEntry = createRedactionLogEntry(textEntity, dossierTemplateId); redactionLogEntry.setId(positionOnPage.getId()); - redactionLogEntry.setComments(buildRedactionLogComments(comments, positionOnPage.getId())); List rectanglesPerLine = positionOnPage.getRectanglePerLine() .stream() @@ -97,37 +90,6 @@ public class RedactionLogCreatorService { } - private List buildRedactionLogComments(Map> commentsPerId, String id) { - - if (!commentsPerId.containsKey(id)) { - return Collections.emptyList(); - } - List comments = commentsPerId.get(id); - if (comments == null || comments.isEmpty()) { - return Collections.emptyList(); - } - return toRedactionLogComments(comments); - } - - - private List toRedactionLogComments(List comments) { - - return comments.stream().map(this::toRedactionLogComment).toList(); - } - - - private RedactionLogComment toRedactionLogComment(Comment comment) { - - return new RedactionLogComment(comment.getId(), - comment.getUser(), - comment.getText(), - comment.getAnnotationId(), - comment.getFileId(), - comment.getDate(), - comment.getSoftDeletedTime()); - } - - private RedactionLogEntry createRedactionLogEntry(TextEntity entity, String dossierTemplateId) { Set referenceIds = new HashSet<>(); @@ -220,7 +182,7 @@ public class RedactionLogCreatorService { } - public RedactionLogEntry createRedactionLogEntry(Image image, String dossierTemplateId, Map> comments) { + public RedactionLogEntry createRedactionLogEntry(Image image, String dossierTemplateId) { String imageType = image.getImageType().equals(ImageType.OTHER) ? "image" : image.getImageType().toString().toLowerCase(Locale.ENGLISH); boolean isHint = dictionaryService.isHint(imageType, dossierTemplateId); @@ -240,7 +202,6 @@ public class RedactionLogCreatorService { .section(image.getManualOverwrite().getSection().orElse(image.getParent().toString())) .imageHasTransparency(image.isTransparent()) .manualChanges(mapManualChanges(image.getManualOverwrite(), isHint)) - .comments(buildRedactionLogComments(comments, image.getId())) .build(); } @@ -252,7 +213,7 @@ public class RedactionLogCreatorService { } - public RedactionLogEntry createRedactionLogEntry(ManualEntity manualEntity, String dossierTemplateId, Map> comments) { + public RedactionLogEntry createRedactionLogEntry(ManualEntity manualEntity, String dossierTemplateId) { String type = manualEntity.getManualOverwrite().getType().orElse(manualEntity.getType()); boolean isHint = isHint(manualEntity.getEntityType()); @@ -282,7 +243,6 @@ public class RedactionLogCreatorService { .engines(Collections.emptySet()) .reference(Collections.emptySet()) .manualChanges(mapManualChanges(manualEntity.getManualOverwrite(), isHint)) - .comments(buildRedactionLogComments(comments, manualEntity.getId())) .build(); } diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java index 406aa3b2..0b90df5a 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java @@ -50,7 +50,6 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntryState; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntryType; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Comment; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRedactions; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Rectangle; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.IdRemoval; @@ -214,17 +213,16 @@ public class RedactionIntegrationTest extends AbstractRedactionIntegrationTest { // } AnalyzeRequest request = uploadFileToStorage("files/new/crafted document.pdf"); - ManualResizeRedaction manualResizeRedaction = ManualResizeRedaction.builder() - .annotationId("c6be5277f5ee60dc3d83527798b7fe02") - .value("Dr. Alan") - .positions(List.of(new Rectangle(236.8f, 182.90005f, 40.584f, 12.642f, 7))) - .status(AnnotationStatus.APPROVED) - .requestDate(OffsetDateTime.now()) - .build(); - manualResizeRedaction.setUpdateDictionary(false); - - ManualRedactions manualRedactions = ManualRedactions.builder().resizeRedactions(Set.of()) + ManualRedactions manualRedactions = ManualRedactions.builder() + .resizeRedactions(Set.of(ManualResizeRedaction.builder() + .annotationId("c6be5277f5ee60dc3d83527798b7fe02") + .value("Dr. Alan") + .positions(List.of(new Rectangle(236.8f, 182.90005f, 40.584f, 12.642f, 7))) + .status(AnnotationStatus.APPROVED) + .requestDate(OffsetDateTime.now()) + .updateDictionary(false) + .build())) .build(); request.setManualRedactions(manualRedactions); @@ -573,7 +571,9 @@ public class RedactionIntegrationTest extends AbstractRedactionIntegrationTest { fileOutputStream.write(objectMapper.writeValueAsBytes(redactionStorageService.getDocumentData(TEST_DOSSIER_ID, TEST_FILE_ID))); } - List valuesInDocument = entityLog.getEntityLogEntry().stream().filter(e -> !e.getEntryType().equals(EntryType.IMAGE)) + List valuesInDocument = entityLog.getEntityLogEntry() + .stream() + .filter(e -> !e.getEntryType().equals(EntryType.IMAGE)) .map(redactionLogEntry -> new TextRange(redactionLogEntry.getStartOffset(), redactionLogEntry.getEndOffset())) .map(boundary -> documentGraph.getTextBlock().subSequence(boundary).toString()) .toList(); @@ -900,9 +900,9 @@ public class RedactionIntegrationTest extends AbstractRedactionIntegrationTest { .value("Bera P") .positions(List.of(new Rectangle(382.12485f, 235.94246f, 8.768621f, -21.632504f, 1))) .textBefore("") + .updateDictionary(false) .textAfter("") .build(); - manualResizeRedaction.setUpdateDictionary(false); manualRedactions.getResizeRedactions().add(manualResizeRedaction); request.setManualRedactions(manualRedactions); @@ -980,7 +980,6 @@ public class RedactionIntegrationTest extends AbstractRedactionIntegrationTest { String manualAddId = UUID.randomUUID().toString(); - Comment comment = Comment.builder().date(OffsetDateTime.now()).user("TEST_USER").text("This is a comment test").build(); manualRedactions.setIdsToRemove(Set.of(IdRemoval.builder() .annotationId("5b940b2cb401ed9f5be6fc24f6e77bcf") .fileId("fileId") @@ -997,10 +996,6 @@ public class RedactionIntegrationTest extends AbstractRedactionIntegrationTest { .processedDate(OffsetDateTime.now()) .build())); - manualRedactions.getComments().put("e5be0f1d941bbb92a068e198648d06c4", List.of(comment)); - manualRedactions.getComments().put("0836727c3508a0b2ea271da69c04cc2f", List.of(comment)); - manualRedactions.getComments().put(manualAddId, List.of(comment)); - ManualRedactionEntry manualRedactionEntry = new ManualRedactionEntry(); manualRedactionEntry.setAnnotationId(manualAddId); manualRedactionEntry.setFileId("fileId"); @@ -1047,6 +1042,7 @@ public class RedactionIntegrationTest extends AbstractRedactionIntegrationTest { Rectangle.builder().topLeftX(307.89517f).topLeftY(327.567f).width(7.648041f).height(61.670967f).page(1).build(), Rectangle.builder().topLeftX(316.99985f).topLeftY(327.567f).width(7.648041f).height(38.104286f).page(1).build())) .status(AnnotationStatus.APPROVED) + .updateDictionary(false) .build())); analyzeService.reanalyze(request); diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/document/graph/MigrationPocTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/document/graph/MigrationPocTest.java index 517b5c61..5462a074 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/document/graph/MigrationPocTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/document/graph/MigrationPocTest.java @@ -94,7 +94,7 @@ public class MigrationPocTest extends BuildDocumentIntegrationTest { Document document = DocumentGraphMapper.toDocumentGraph(redactionStorageService.getDocumentData(request.getDossierId(), request.getFileId())); List notFoundManualRedactionEntries = redactionLogAdapter.toTextEntity(originalRedactionLog, document); - var migratedRedactionLogEntries = redactionLogCreatorService.createRedactionLog(document, TEST_DOSSIER_TEMPLATE_ID, notFoundManualRedactionEntries, Collections.emptyMap()); + var migratedRedactionLogEntries = redactionLogCreatorService.createRedactionLog(document, TEST_DOSSIER_TEMPLATE_ID, notFoundManualRedactionEntries); Map migratedIds = migratedRedactionLogEntries.stream().collect(toMap(RedactionLogEntry::getId, Functions.identity())); Map newIds = newRedactionLog.getRedactionLogEntry().stream().collect(toMap(RedactionLogEntry::getId, Functions.identity())); diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesEnd2EndTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesEnd2EndTest.java index 7844895a..4ffeb2de 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesEnd2EndTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesEnd2EndTest.java @@ -40,7 +40,6 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntryState; import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.ManualRedactionType; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Comment; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRedactions; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Rectangle; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.IdRemoval; @@ -160,7 +159,9 @@ public class ManualChangesEnd2EndTest extends AbstractRedactionIntegrationTest { TextEntity expandedEntity = entityCreationService.byString(expandedEntityKeyword, "PII", EntityType.ENTITY, document).findFirst().get(); String idToResize = redactionLog.getEntityLogEntry() - .stream().filter(entry -> entry.getValue().equals(testEntityValue1)).max(Comparator.comparingInt(EntityLogEntry::getStartOffset)) + .stream() + .filter(entry -> entry.getValue().equals(testEntityValue1)) + .max(Comparator.comparingInt(EntityLogEntry::getStartOffset)) .get() .getId(); List resizedPositions = expandedEntity.getPositionsOnPagePerPage() @@ -175,6 +176,7 @@ public class ManualChangesEnd2EndTest extends AbstractRedactionIntegrationTest { .positions(resizedPositions) .requestDate(OffsetDateTime.now()) .status(AnnotationStatus.APPROVED) + .updateDictionary(false) .build(); manualResizeRedaction.setUpdateDictionary(false); ManualRedactions manualRedactions = new ManualRedactions(); @@ -218,7 +220,6 @@ public class ManualChangesEnd2EndTest extends AbstractRedactionIntegrationTest { String manualAddId = UUID.randomUUID().toString(); - Comment comment = Comment.builder().date(OffsetDateTime.now()).user("TEST_USER").text("This is a comment test").build(); manualRedactions.setIdsToRemove(Set.of(IdRemoval.builder().annotationId("5b940b2cb401ed9f5be6fc24f6e77bcf").fileId("fileId").status(AnnotationStatus.DECLINED).build())); manualRedactions.setForceRedactions(Set.of(ManualForceRedaction.builder() .annotationId("675eba69b0c2917de55462c817adaa05") @@ -227,10 +228,6 @@ public class ManualChangesEnd2EndTest extends AbstractRedactionIntegrationTest { .status(AnnotationStatus.APPROVED) .build())); - manualRedactions.getComments().put("e5be0f1d941bbb92a068e198648d06c4", List.of(comment)); - manualRedactions.getComments().put("0836727c3508a0b2ea271da69c04cc2f", List.of(comment)); - manualRedactions.getComments().put(manualAddId, List.of(comment)); - ManualRedactionEntry manualRedactionEntry = new ManualRedactionEntry(); manualRedactionEntry.setAnnotationId(manualAddId); manualRedactionEntry.setFileId("fileId"); @@ -362,9 +359,10 @@ public class ManualChangesEnd2EndTest extends AbstractRedactionIntegrationTest { .annotationId(annotationId) .requestDate(OffsetDateTime.now()) .value("Expand to Hint") - .positions(List.of(new Rectangle(new Point(56.8f, 496.27f), 61.25f, 12.83f, 2))).status(AnnotationStatus.APPROVED) + .positions(List.of(new Rectangle(new Point(56.8f, 496.27f), 61.25f, 12.83f, 2))) + .status(AnnotationStatus.APPROVED) + .updateDictionary(false) .build(); - manualResizeRedaction.setUpdateDictionary(false); manualRedactions.setResizeRedactions(Set.of(manualResizeRedaction)); request.setManualRedactions(manualRedactions); diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesIntegrationTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesIntegrationTest.java index 6a4c2381..2a865b1b 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesIntegrationTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/manualchanges/ManualChangesIntegrationTest.java @@ -5,10 +5,8 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import static org.wildfly.common.Assert.assertFalse; import java.awt.geom.Rectangle2D; -import java.io.FileOutputStream; import java.time.OffsetDateTime; import java.util.Collection; -import java.util.Comparator; import java.util.List; import java.util.Set; import java.util.stream.Collectors; @@ -28,30 +26,20 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Import; -import com.iqser.red.service.persistence.service.v1.api.shared.model.AnalyzeRequest; -import com.iqser.red.service.persistence.service.v1.api.shared.model.AnalyzeResult; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.AnnotationStatus; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.Rectangle; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.IdRemoval; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualForceRedaction; -import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualRecategorization; import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.entitymapped.ManualResizeRedaction; -import com.iqser.red.service.redaction.v1.server.annotate.AnnotateRequest; -import com.iqser.red.service.redaction.v1.server.annotate.AnnotateResponse; import com.iqser.red.service.redaction.v1.server.document.graph.BuildDocumentIntegrationTest; import com.iqser.red.service.redaction.v1.server.model.document.entity.EntityType; -import com.iqser.red.service.redaction.v1.server.model.document.entity.TextEntity; import com.iqser.red.service.redaction.v1.server.model.document.entity.PositionOnPage; +import com.iqser.red.service.redaction.v1.server.model.document.entity.TextEntity; import com.iqser.red.service.redaction.v1.server.model.document.nodes.Document; import com.iqser.red.service.redaction.v1.server.model.document.nodes.Paragraph; -import com.iqser.red.service.redaction.v1.server.redaction.utils.OsUtils; +import com.iqser.red.service.redaction.v1.server.service.ManualChangesApplicationService; import com.iqser.red.service.redaction.v1.server.service.document.EntityCreationService; import com.iqser.red.service.redaction.v1.server.service.document.EntityEnrichmentService; -import com.iqser.red.service.redaction.v1.server.service.ManualChangesApplicationService; -import com.iqser.red.service.redaction.v1.server.utils.exception.NotFoundException; -import com.knecon.fforesight.service.layoutparser.internal.api.queue.LayoutParsingType; - -import lombok.SneakyThrows; @Import(ManualChangesIntegrationTest.TestConfiguration.class) public class ManualChangesIntegrationTest extends BuildDocumentIntegrationTest { @@ -117,9 +105,9 @@ public class ManualChangesIntegrationTest extends BuildDocumentIntegrationTest { .positions(toAnnotationRectangles(biggerEntity.getPositionsOnPagePerPage().get(0))) .status(AnnotationStatus.APPROVED) .requestDate(OffsetDateTime.now()) + .updateDictionary(false) .build(); - kieSession.insert(document); document.streamAllSubNodes().forEach(kieSession::insert); kieSession.insert(manualResizeRedaction); @@ -153,7 +141,6 @@ public class ManualChangesIntegrationTest extends BuildDocumentIntegrationTest { .requestDate(OffsetDateTime.now()) .build(); - kieSession.insert(manualForceRedaction); kieSession.insert(document); document.streamAllSubNodes().forEach(kieSession::insert); @@ -183,7 +170,6 @@ public class ManualChangesIntegrationTest extends BuildDocumentIntegrationTest { String initialId = entity.getPositionsOnPagePerPage().get(0).getId(); IdRemoval idRemoval = IdRemoval.builder().annotationId(initialId).status(AnnotationStatus.APPROVED).requestDate(OffsetDateTime.now()).build(); - kieSession.insert(document); document.streamAllSubNodes().forEach(kieSession::insert); kieSession.insert(idRemoval); @@ -213,7 +199,6 @@ public class ManualChangesIntegrationTest extends BuildDocumentIntegrationTest { .requestDate(OffsetDateTime.now()) .build(); - kieSession.insert(document); document.streamAllSubNodes().forEach(kieSession::insert); kieSession.insert(idRemoval); @@ -242,7 +227,6 @@ public class ManualChangesIntegrationTest extends BuildDocumentIntegrationTest { String initialId = entity.getPositionsOnPagePerPage().get(0).getId(); IdRemoval idRemoval = IdRemoval.builder().annotationId(initialId).status(AnnotationStatus.REQUESTED).build(); - kieSession.insert(idRemoval); kieSession.insert(document); document.streamAllSubNodes().forEach(kieSession::insert);