Merge branch 'RED-9606-bp' into 'release/2.465.x'
RED-9606 - Fix removal See merge request redactmanager/persistence-service!585
This commit is contained in:
commit
058d44da90
@ -4,9 +4,12 @@ import static com.iqser.red.service.persistence.management.v1.processor.utils.Ty
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
import java.util.function.Function;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
@ -91,10 +94,16 @@ public class ManualRedactionMapper {
|
|||||||
.map(RemoveRedactionRequestModel::getAnnotationId)
|
.map(RemoveRedactionRequestModel::getAnnotationId)
|
||||||
.toList(),
|
.toList(),
|
||||||
includeUnprocessed);
|
includeUnprocessed);
|
||||||
|
|
||||||
|
Map<String, EntityLogEntry> iddToEntityLogEntryMap = entityLogEntries.stream()
|
||||||
|
.collect(Collectors.toMap(EntityLogEntry::getId, Function.identity()));
|
||||||
|
|
||||||
List<RequestEntryPair<RemoveRedactionRequest>> requests = new ArrayList<>();
|
List<RequestEntryPair<RemoveRedactionRequest>> requests = new ArrayList<>();
|
||||||
for (var removeRedactionRequest : removeRedactionRequests) {
|
for (var removeRedactionRequest : removeRedactionRequests) {
|
||||||
|
|
||||||
entityLogEntries.forEach(entityLogEntry -> {
|
EntityLogEntry entityLogEntry = iddToEntityLogEntryMap.get(removeRedactionRequest.getAnnotationId());
|
||||||
|
|
||||||
|
if (entityLogEntry != null) {
|
||||||
var request = RemoveRedactionRequest.builder()
|
var request = RemoveRedactionRequest.builder()
|
||||||
.annotationId(removeRedactionRequest.getAnnotationId())
|
.annotationId(removeRedactionRequest.getAnnotationId())
|
||||||
.user(KeycloakSecurity.getUserId())
|
.user(KeycloakSecurity.getUserId())
|
||||||
@ -111,7 +120,7 @@ public class ManualRedactionMapper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
requests.add(RequestEntryPair.<RemoveRedactionRequest>builder().request(request.build()).entityLogEntry(entityLogEntry).build());
|
requests.add(RequestEntryPair.<RemoveRedactionRequest>builder().request(request.build()).entityLogEntry(entityLogEntry).build());
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return requests;
|
return requests;
|
||||||
|
|||||||
@ -15,6 +15,7 @@ import static org.mockito.Mockito.when;
|
|||||||
|
|
||||||
import java.time.OffsetDateTime;
|
import java.time.OffsetDateTime;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@ -55,6 +56,7 @@ 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.ManualRedactionType;
|
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.analysislog.entitylog.Position;
|
import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.Position;
|
||||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualAddResponse;
|
import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualAddResponse;
|
||||||
|
import com.iqser.red.service.persistence.service.v1.api.shared.model.annotations.ManualRedactionResponse;
|
||||||
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.Rectangle;
|
||||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dictionary.Dictionary;
|
import com.iqser.red.service.persistence.service.v1.api.shared.model.dictionary.Dictionary;
|
||||||
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.dossier.file.FileType;
|
||||||
@ -411,8 +413,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
manualRedactionClient.removeRedactionBulk(dossier.getId(),
|
manualRedactionClient.removeRedactionBulk(dossier.getId(),
|
||||||
file.getId(),
|
file.getId(),
|
||||||
Set.of(RemoveRedactionRequestModel.builder().annotationId("AnnotationId").removeFromDictionary(true).build()),
|
Set.of(RemoveRedactionRequestModel.builder().annotationId("AnnotationId").removeFromDictionary(true).build()),
|
||||||
false)
|
false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
var dossierDictionary = internalDictionaryClient.getDictionaryForType(toTypeId(type.getType(), dossierTemplate.getId(), dossier.getId()), null);
|
var dossierDictionary = internalDictionaryClient.getDictionaryForType(toTypeId(type.getType(), dossierTemplate.getId(), dossier.getId()), null);
|
||||||
|
|
||||||
@ -470,8 +472,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.removeFromDictionary(true)
|
.removeFromDictionary(true)
|
||||||
.removeFromAllDossiers(true)
|
.removeFromAllDossiers(true)
|
||||||
.build()),
|
.build()),
|
||||||
false)
|
false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
var dossierDictionary = internalDictionaryClient.getDictionaryForType(toTypeId(type.getType(), dossierTemplate.getId(), dossier.getId()), null);
|
var dossierDictionary = internalDictionaryClient.getDictionaryForType(toTypeId(type.getType(), dossierTemplate.getId(), dossier.getId()), null);
|
||||||
assertThat(dossierDictionary.getEntries().size()).isEqualTo(1);
|
assertThat(dossierDictionary.getEntries().size()).isEqualTo(1);
|
||||||
@ -534,7 +536,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog1 = new EntityLog(1,
|
var entityLog1 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(0).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(0).getAnnotationId())
|
||||||
.type(typeDosDict.getType())
|
.type(typeDosDict.getType())
|
||||||
.value("test redaction in dossier")
|
.value("test redaction in dossier")
|
||||||
.dossierDictionaryEntry(true)
|
.dossierDictionaryEntry(true)
|
||||||
@ -542,7 +545,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.state(EntryState.APPLIED)
|
.state(EntryState.APPLIED)
|
||||||
.build(),
|
.build(),
|
||||||
EntityLogEntry.builder()
|
EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template")
|
.value("test redaction in dossier template")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -561,7 +565,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog2 = new EntityLog(1,
|
var entityLog2 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template")
|
.value("test redaction in dossier template")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -579,7 +584,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
|
|
||||||
// resize redaction in dossier 1
|
// resize redaction in dossier 1
|
||||||
var resizeRedactionDosAndAddToAllDos = ResizeRedactionRequestModel.builder()
|
var resizeRedactionDosAndAddToAllDos = ResizeRedactionRequestModel.builder()
|
||||||
.annotationId(addRedactions.getManualAddResponses().get(0).getAnnotationId())
|
.annotationId(addRedactions.getManualAddResponses()
|
||||||
|
.get(0).getAnnotationId())
|
||||||
.comment("resized dossier redaction")
|
.comment("resized dossier redaction")
|
||||||
.value("test redaction in dossier dictionary")
|
.value("test redaction in dossier dictionary")
|
||||||
.updateDictionary(true)
|
.updateDictionary(true)
|
||||||
@ -699,7 +705,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog1 = new EntityLog(1,
|
var entityLog1 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(0).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(0).getAnnotationId())
|
||||||
.type(typeDosDict.getType())
|
.type(typeDosDict.getType())
|
||||||
.value("test redaction in dossier yayy")
|
.value("test redaction in dossier yayy")
|
||||||
.dossierDictionaryEntry(true)
|
.dossierDictionaryEntry(true)
|
||||||
@ -707,7 +714,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.state(EntryState.APPLIED)
|
.state(EntryState.APPLIED)
|
||||||
.build(),
|
.build(),
|
||||||
EntityLogEntry.builder()
|
EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template yayy")
|
.value("test redaction in dossier template yayy")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -726,7 +734,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog2 = new EntityLog(1,
|
var entityLog2 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template yayy")
|
.value("test redaction in dossier template yayy")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -744,7 +753,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
|
|
||||||
// resize redaction in dossier 1
|
// resize redaction in dossier 1
|
||||||
var resizeRedactionDosAndAddToAllDos = ResizeRedactionRequestModel.builder()
|
var resizeRedactionDosAndAddToAllDos = ResizeRedactionRequestModel.builder()
|
||||||
.annotationId(addRedactions.getManualAddResponses().get(0).getAnnotationId())
|
.annotationId(addRedactions.getManualAddResponses()
|
||||||
|
.get(0).getAnnotationId())
|
||||||
.comment("resized dossier redaction")
|
.comment("resized dossier redaction")
|
||||||
.value("test redaction in dossier")
|
.value("test redaction in dossier")
|
||||||
.updateDictionary(true)
|
.updateDictionary(true)
|
||||||
@ -868,7 +878,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog1 = new EntityLog(1,
|
var entityLog1 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(0).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(0).getAnnotationId())
|
||||||
.type(typeDosDict.getType())
|
.type(typeDosDict.getType())
|
||||||
.value("test redaction in dossier")
|
.value("test redaction in dossier")
|
||||||
.dossierDictionaryEntry(true)
|
.dossierDictionaryEntry(true)
|
||||||
@ -876,7 +887,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.state(EntryState.APPLIED)
|
.state(EntryState.APPLIED)
|
||||||
.build(),
|
.build(),
|
||||||
EntityLogEntry.builder()
|
EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template")
|
.value("test redaction in dossier template")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -895,7 +907,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog2 = new EntityLog(1,
|
var entityLog2 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template")
|
.value("test redaction in dossier template")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -913,7 +926,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
|
|
||||||
// resize redaction in dossier dict
|
// resize redaction in dossier dict
|
||||||
var resizeRedactionDosTemp = ResizeRedactionRequestModel.builder()
|
var resizeRedactionDosTemp = ResizeRedactionRequestModel.builder()
|
||||||
.annotationId(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.annotationId(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.comment("resized dossier template redaction")
|
.comment("resized dossier template redaction")
|
||||||
.value("test redaction in dossier template dictionary")
|
.value("test redaction in dossier template dictionary")
|
||||||
.updateDictionary(true)
|
.updateDictionary(true)
|
||||||
@ -1034,7 +1048,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog1 = new EntityLog(1,
|
var entityLog1 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(0).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(0).getAnnotationId())
|
||||||
.type(typeDosDict.getType())
|
.type(typeDosDict.getType())
|
||||||
.value("test redaction in dossier yayy")
|
.value("test redaction in dossier yayy")
|
||||||
.dossierDictionaryEntry(true)
|
.dossierDictionaryEntry(true)
|
||||||
@ -1042,7 +1057,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.state(EntryState.APPLIED)
|
.state(EntryState.APPLIED)
|
||||||
.build(),
|
.build(),
|
||||||
EntityLogEntry.builder()
|
EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template yayy")
|
.value("test redaction in dossier template yayy")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -1061,7 +1077,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
var entityLog2 = new EntityLog(1,
|
var entityLog2 = new EntityLog(1,
|
||||||
1,
|
1,
|
||||||
List.of(EntityLogEntry.builder()
|
List.of(EntityLogEntry.builder()
|
||||||
.id(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.id(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.type(typeDosTempDict.getType())
|
.type(typeDosTempDict.getType())
|
||||||
.value("test redaction in dossier template yayy")
|
.value("test redaction in dossier template yayy")
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
@ -1079,7 +1096,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
|
|
||||||
// resize redaction in dossier dict
|
// resize redaction in dossier dict
|
||||||
var resizeRedactionDosTemp = ResizeRedactionRequestModel.builder()
|
var resizeRedactionDosTemp = ResizeRedactionRequestModel.builder()
|
||||||
.annotationId(addRedactions.getManualAddResponses().get(1).getAnnotationId())
|
.annotationId(addRedactions.getManualAddResponses()
|
||||||
|
.get(1).getAnnotationId())
|
||||||
.comment("resized dossier template redaction")
|
.comment("resized dossier template redaction")
|
||||||
.value("test redaction in dossier template")
|
.value("test redaction in dossier template")
|
||||||
.updateDictionary(true)
|
.updateDictionary(true)
|
||||||
@ -2038,8 +2056,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.stream()
|
.stream()
|
||||||
.anyMatch(entry -> entry.getAnnotationId().equals("annotationId")));
|
.anyMatch(entry -> entry.getAnnotationId().equals("annotationId")));
|
||||||
|
|
||||||
assertThatThrownBy(() -> manualRedactionClient.recategorizeBulk(dossier.getId(), file.getId(), Set.of(recatModelLongLegalBasis), false)
|
assertThatThrownBy(() -> manualRedactionClient.recategorizeBulk(dossier.getId(), file.getId(), Set.of(recatModelLongLegalBasis), false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0)).isInstanceOf(FeignException.class).hasMessageContaining("The legal basis is too long");
|
.get(0)).isInstanceOf(FeignException.class).hasMessageContaining("The legal basis is too long");
|
||||||
|
|
||||||
assertNull(allManualRedactions.getRecategorizations()
|
assertNull(allManualRedactions.getRecategorizations()
|
||||||
.stream()
|
.stream()
|
||||||
@ -2503,7 +2521,7 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.entryType(EntryType.ENTITY)
|
.entryType(EntryType.ENTITY)
|
||||||
.state(EntryState.APPLIED)
|
.state(EntryState.APPLIED)
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
.positions(List.of(new Position(10f, 10f ,10f, 10f, 1)))
|
.positions(List.of(new Position(10f, 10f, 10f, 10f, 1)))
|
||||||
.build()),
|
.build()),
|
||||||
null,
|
null,
|
||||||
0,
|
0,
|
||||||
@ -2514,22 +2532,22 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
||||||
|
|
||||||
ManualAddResponse response = manualRedactionClient.addRedactionBulk(dossier.getId(),
|
ManualAddResponse response = manualRedactionClient.addRedactionBulk(dossier.getId(),
|
||||||
file.getId(),
|
file.getId(),
|
||||||
Set.of(AddRedactionRequestModel.builder()
|
Set.of(AddRedactionRequestModel.builder()
|
||||||
.sourceId("")
|
.sourceId("")
|
||||||
.reason("Reason")
|
.reason("Reason")
|
||||||
.type(type.getType())
|
.type(type.getType())
|
||||||
.addToAllDossiers(false)
|
.addToAllDossiers(false)
|
||||||
.addToDictionary(false)
|
.addToDictionary(false)
|
||||||
.dictionaryEntryType(DictionaryEntryType.ENTRY)
|
.dictionaryEntryType(DictionaryEntryType.ENTRY)
|
||||||
.forceAddToDictionary(false)
|
.forceAddToDictionary(false)
|
||||||
.legalBasis("legalBasis")
|
.legalBasis("legalBasis")
|
||||||
.positions(List.of(new Rectangle(10f, 10f ,10f, 10f, 1)))
|
.positions(List.of(new Rectangle(10f, 10f, 10f, 10f, 1)))
|
||||||
.value("MyValue")
|
.value("MyValue")
|
||||||
.build()))
|
.build())).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), response.getAnnotationId());
|
assertEquals(response.getEntityLogEntry().getId(), response.getAnnotationId());
|
||||||
assertEquals(response.getEntityLogEntry().getValue(), "MyValue");
|
assertEquals(response.getEntityLogEntry().getValue(), "MyValue");
|
||||||
assertEquals(response.getEntityLogEntry().getLegalBasis(), "legalBasis");
|
assertEquals(response.getEntityLogEntry().getLegalBasis(), "legalBasis");
|
||||||
assertEquals(response.getEntityLogEntry().getReason(), "Reason");
|
assertEquals(response.getEntityLogEntry().getReason(), "Reason");
|
||||||
@ -2560,7 +2578,7 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.entryType(EntryType.ENTITY)
|
.entryType(EntryType.ENTITY)
|
||||||
.state(EntryState.SKIPPED)
|
.state(EntryState.SKIPPED)
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
.positions(List.of(new Position(10f, 10f ,10f, 10f, 1)))
|
.positions(List.of(new Position(10f, 10f, 10f, 10f, 1)))
|
||||||
.build()),
|
.build()),
|
||||||
null,
|
null,
|
||||||
0,
|
0,
|
||||||
@ -2571,14 +2589,14 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
||||||
|
|
||||||
ManualAddResponse response = manualRedactionClient.forceRedactionBulk(dossier.getId(),
|
ManualAddResponse response = manualRedactionClient.forceRedactionBulk(dossier.getId(),
|
||||||
file.getId(),
|
file.getId(),
|
||||||
Set.of(ForceRedactionRequestModel.builder()
|
Set.of(ForceRedactionRequestModel.builder()
|
||||||
.annotationId("AnnotationId")
|
.annotationId("AnnotationId")
|
||||||
.legalBasis("legalBasis")
|
.legalBasis("legalBasis")
|
||||||
.build()))
|
.build())).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||||
assertEquals(response.getEntityLogEntry().getLegalBasis(), "legalBasis");
|
assertEquals(response.getEntityLogEntry().getLegalBasis(), "legalBasis");
|
||||||
assertEquals(response.getEntityLogEntry().getState(), EntryState.APPLIED);
|
assertEquals(response.getEntityLogEntry().getState(), EntryState.APPLIED);
|
||||||
assertEquals(response.getEntityLogEntry().getManualChanges()
|
assertEquals(response.getEntityLogEntry().getManualChanges()
|
||||||
@ -2616,14 +2634,14 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
||||||
|
|
||||||
ManualAddResponse response = manualRedactionClient.legalBasisChangeBulk(dossier.getId(),
|
ManualAddResponse response = manualRedactionClient.legalBasisChangeBulk(dossier.getId(),
|
||||||
file.getId(),
|
file.getId(),
|
||||||
Set.of(LegalBasisChangeRequestModel.builder()
|
Set.of(LegalBasisChangeRequestModel.builder()
|
||||||
.annotationId("AnnotationId")
|
.annotationId("AnnotationId")
|
||||||
.legalBasis("new legal basis")
|
.legalBasis("new legal basis")
|
||||||
.value("Luke Skywalker")
|
.value("Luke Skywalker")
|
||||||
.section("")
|
.section("")
|
||||||
.build()))
|
.build())).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||||
assertEquals(response.getEntityLogEntry().getLegalBasis(), "new legal basis");
|
assertEquals(response.getEntityLogEntry().getLegalBasis(), "new legal basis");
|
||||||
@ -2633,6 +2651,7 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.get(0).getProcessedDate());
|
.get(0).getProcessedDate());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testLocalResize() {
|
public void testLocalResize() {
|
||||||
|
|
||||||
@ -2651,7 +2670,7 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.entryType(EntryType.ENTITY)
|
.entryType(EntryType.ENTITY)
|
||||||
.state(EntryState.APPLIED)
|
.state(EntryState.APPLIED)
|
||||||
.dictionaryEntry(true)
|
.dictionaryEntry(true)
|
||||||
.positions(List.of(new Position(10f, 10f ,10f, 10f, 1)))
|
.positions(List.of(new Position(10f, 10f, 10f, 10f, 1)))
|
||||||
.build()),
|
.build()),
|
||||||
null,
|
null,
|
||||||
0,
|
0,
|
||||||
@ -2662,23 +2681,27 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
||||||
|
|
||||||
ManualAddResponse response = manualRedactionClient.resizeRedactionBulk(dossier.getId(),
|
ManualAddResponse response = manualRedactionClient.resizeRedactionBulk(dossier.getId(),
|
||||||
file.getId(),
|
file.getId(),
|
||||||
Set.of(ResizeRedactionRequestModel.builder()
|
Set.of(ResizeRedactionRequestModel.builder()
|
||||||
.annotationId("AnnotationId")
|
.annotationId("AnnotationId")
|
||||||
.updateDictionary(false)
|
.updateDictionary(false)
|
||||||
.addToAllDossiers(false)
|
.addToAllDossiers(false)
|
||||||
.value("Luke")
|
.value("Luke")
|
||||||
.positions(List.of(new Rectangle(5f, 5f, 5f ,5f ,1)))
|
.positions(List.of(new Rectangle(5f, 5f, 5f, 5f, 1)))
|
||||||
.build()),
|
.build()),
|
||||||
false)
|
false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||||
assertEquals(response.getEntityLogEntry().getValue(), "Luke");
|
assertEquals(response.getEntityLogEntry().getValue(), "Luke");
|
||||||
assertEquals(response.getEntityLogEntry().getPositions().get(0).getRectangle()[0], 5f);
|
assertEquals(response.getEntityLogEntry().getPositions()
|
||||||
assertEquals(response.getEntityLogEntry().getPositions().get(0).getRectangle()[1], 5f);
|
.get(0).getRectangle()[0], 5f);
|
||||||
assertEquals(response.getEntityLogEntry().getPositions().get(0).getRectangle()[2], 5f);
|
assertEquals(response.getEntityLogEntry().getPositions()
|
||||||
assertEquals(response.getEntityLogEntry().getPositions().get(0).getRectangle()[3], 5f);
|
.get(0).getRectangle()[1], 5f);
|
||||||
|
assertEquals(response.getEntityLogEntry().getPositions()
|
||||||
|
.get(0).getRectangle()[2], 5f);
|
||||||
|
assertEquals(response.getEntityLogEntry().getPositions()
|
||||||
|
.get(0).getRectangle()[3], 5f);
|
||||||
assertEquals(response.getEntityLogEntry().getManualChanges()
|
assertEquals(response.getEntityLogEntry().getManualChanges()
|
||||||
.get(0).getManualRedactionType(), ManualRedactionType.RESIZE);
|
.get(0).getManualRedactionType(), ManualRedactionType.RESIZE);
|
||||||
assertNull(response.getEntityLogEntry().getManualChanges()
|
assertNull(response.getEntityLogEntry().getManualChanges()
|
||||||
@ -2725,8 +2748,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.section("section")
|
.section("section")
|
||||||
.value("Luke Skywalker")
|
.value("Luke Skywalker")
|
||||||
.build()),
|
.build()),
|
||||||
false)
|
false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||||
assertEquals(response.getEntityLogEntry().getType(), type2.getType());
|
assertEquals(response.getEntityLogEntry().getType(), type2.getType());
|
||||||
@ -2771,8 +2794,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.removeFromDictionary(false)
|
.removeFromDictionary(false)
|
||||||
.removeFromAllDossiers(false)
|
.removeFromAllDossiers(false)
|
||||||
.build()),
|
.build()),
|
||||||
false)
|
false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||||
assertEquals(response.getEntityLogEntry().getState(), EntryState.IGNORED);
|
assertEquals(response.getEntityLogEntry().getState(), EntryState.IGNORED);
|
||||||
@ -2828,8 +2851,8 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.section("section")
|
.section("section")
|
||||||
.value("Luke Skywalker")
|
.value("Luke Skywalker")
|
||||||
.build()),
|
.build()),
|
||||||
false)
|
false).getManualAddResponses()
|
||||||
.getManualAddResponses().get(0);
|
.get(0);
|
||||||
|
|
||||||
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
assertEquals(response.getEntityLogEntry().getId(), "AnnotationId");
|
||||||
assertEquals(response.getEntityLogEntry().getType(), type2.getType());
|
assertEquals(response.getEntityLogEntry().getType(), type2.getType());
|
||||||
@ -2842,4 +2865,40 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
|
|||||||
.get(0).getProcessedDate());
|
.get(0).getProcessedDate());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testRemoveMoreThan500Annotations() {
|
||||||
|
|
||||||
|
var dossierTemplate = dossierTemplateTesterAndProvider.provideTestTemplate();
|
||||||
|
var dossier = dossierTesterAndProvider.provideTestDossier(dossierTemplate);
|
||||||
|
var file = fileTesterAndProvider.testAndProvideFile(dossier);
|
||||||
|
|
||||||
|
List<EntityLogEntry> entityLogEntries = new ArrayList<>();
|
||||||
|
Set<RemoveRedactionRequestModel> removeRedactionRequestModels = new HashSet<>();
|
||||||
|
for (int i = 0; i < 600; i++) {
|
||||||
|
entityLogEntries.add(EntityLogEntry.builder()
|
||||||
|
.id("AnnotationId" + i)
|
||||||
|
.type("test")
|
||||||
|
.value("Luke Skywalker" + i)
|
||||||
|
.entryType(EntryType.ENTITY)
|
||||||
|
.state(EntryState.APPLIED)
|
||||||
|
.dictionaryEntry(false)
|
||||||
|
.section("section")
|
||||||
|
.legalBasis("Article legal basis")
|
||||||
|
.build());
|
||||||
|
removeRedactionRequestModels.add(RemoveRedactionRequestModel.builder()
|
||||||
|
.annotationId("AnnotationId" + i)
|
||||||
|
.removeFromDictionary(false)
|
||||||
|
.removeFromAllDossiers(false)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
var entityLog = new EntityLog(1, 1, entityLogEntries, null, 0, 0, 0, 0);
|
||||||
|
fileManagementStorageService.saveEntityLog(dossier.getId(), file.getId(), entityLog);
|
||||||
|
|
||||||
|
when(entityLogService.getEntityLog(any(), any(), anyBoolean())).thenReturn(entityLog);
|
||||||
|
|
||||||
|
ManualRedactionResponse manualRedactionResponse = manualRedactionClient.removeRedactionBulk(dossier.getId(), file.getId(), removeRedactionRequestModels, false);
|
||||||
|
assertEquals(manualRedactionResponse.getManualAddResponses().size(), 600);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user