RED-8670: integrate table inference from research

* introduce controllerAdvice to ControllerV2 package
* remove unnecessary analysis requirement calculation for deleted files
* silence javadoc lint warnings (e.g. no comment)
This commit is contained in:
Kilian Schuettler 2024-05-27 20:06:04 +02:00
parent 18fce9f38c
commit 5f007b8da3
4 changed files with 15 additions and 23 deletions

View File

@ -43,8 +43,6 @@ public class FileStatusProcessingUpdateService {
case SURROUNDING_TEXT_ANALYSIS:
break;
case ANALYSE:
case REANALYSE:
default:
log.info("Analysis Successful for dossier {} and file {}, Attempt to update status: {}", dossierId, fileId, 0);

View File

@ -2,6 +2,7 @@ package com.iqser.red.service.persistence.management.v1.processor.service.persis
import java.time.OffsetDateTime;
import java.time.temporal.ChronoUnit;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@ -133,7 +134,6 @@ public class FileStatusPersistenceService {
return;
}
fileRepository.updateProcessingStatus(fileId,
numberOfPages,
ProcessingStatus.PROCESSED,
@ -150,9 +150,7 @@ public class FileStatusPersistenceService {
calculateProcessingErrorCounter(fileId, ProcessingStatus.PROCESSED));
// must be modifiable, otherwise hibernate fails
List<FileEntityComponentMappingVersionEntity> versionEntities = usedComponentMappings.stream()
.map(cm -> new FileEntityComponentMappingVersionEntity(cm.getName(), cm.getVersion()))
.collect(Collectors.toList());
List<FileEntityComponentMappingVersionEntity> versionEntities = getFileEntityComponentMappingVersionEntities(usedComponentMappings);
FileEntity fileEntity = entityManager.find(FileEntity.class, fileId);
@ -164,6 +162,17 @@ public class FileStatusPersistenceService {
}
private static List<FileEntityComponentMappingVersionEntity> getFileEntityComponentMappingVersionEntities(List<ComponentMappingMetadata> usedComponentMappings) {
if (usedComponentMappings == null) {
return Collections.emptyList();
}
return usedComponentMappings.stream()
.map(cm -> new FileEntityComponentMappingVersionEntity(cm.getName(), cm.getVersion()))
.collect(Collectors.toList());
}
@Transactional
public void updateFlags(String fileId, boolean hasRedactions, boolean hasHints, boolean hasImages, boolean hasSuggestions, boolean hasComments, boolean hasUpdates) {

View File

@ -4,6 +4,7 @@ import static org.assertj.core.api.Assertions.assertThat;
import java.io.ByteArrayInputStream;
import java.nio.charset.StandardCharsets;
import java.util.Collections;
import java.util.List;
import org.apache.commons.codec.binary.Base64;
@ -115,6 +116,7 @@ public class FileTesterAndProvider {
result.setDossierDictionaryVersion(1);
result.setAnalysisNumber(1);
result.setAnalysisVersion(1);
result.setUsedComponentMappings(Collections.emptyList());
fileStatusService.setStatusSuccessful(dossierId, fileId, result);
fileStatusService.setStatusProcessed(fileId);
}

View File

@ -16,16 +16,12 @@ import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.mock.mockito.MockBean;
@ -148,19 +144,6 @@ public class DossierTemplateImportExportTest extends AbstractPersistenceServerSe
}
private static boolean areDirectoriesIdentical(Path dir1, Path dir2) throws IOException, NoSuchAlgorithmException {
if (!Files.isDirectory(dir1) || !Files.isDirectory(dir2)) {
throw new IllegalArgumentException("Both paths should be directories.");
}
Map<Path, byte[]> dir1Contents = getDirectoryContents(dir1);
Map<Path, byte[]> dir2Contents = getDirectoryContents(dir2);
return dir1Contents.equals(dir2Contents);
}
private static Map<Path, byte[]> getDirectoryContents(Path dir) throws IOException, NoSuchAlgorithmException {
Map<Path, byte[]> contents = new HashMap<>();