RED-7326 - Backport fileSize fix
This commit is contained in:
parent
9a3921ed55
commit
829132199e
@ -20,5 +20,6 @@ public class AddFileRequest {
|
||||
@NonNull
|
||||
private String dossierId;
|
||||
private String uploader;
|
||||
private long fileSize;
|
||||
|
||||
}
|
||||
|
||||
@ -39,7 +39,7 @@ public class FileStatusPersistenceService {
|
||||
private final DossierPersistenceService dossierService;
|
||||
|
||||
|
||||
public void createStatus(String dossierId, String fileId, String filename, String uploader) {
|
||||
public void createStatus(String dossierId, String fileId, String filename, String uploader, long fileSize) {
|
||||
|
||||
OffsetDateTime now = OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS);
|
||||
FileEntity file = new FileEntity();
|
||||
@ -55,6 +55,7 @@ public class FileStatusPersistenceService {
|
||||
file.setLastUpdated(now);
|
||||
file.setFileManipulationDate(now);
|
||||
file.setProcessingErrorCounter(0);
|
||||
file.setFileSize(fileSize);
|
||||
fileRepository.save(file);
|
||||
}
|
||||
|
||||
@ -65,11 +66,12 @@ public class FileStatusPersistenceService {
|
||||
if (isFileDeleted(fileId)) {
|
||||
return;
|
||||
}
|
||||
|
||||
log.info("File " + fileId + " has been optimized with file size " + fileSize);
|
||||
fileRepository.updateProcessingStatus(fileId,
|
||||
ProcessingStatus.PRE_PROCESSED,
|
||||
OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS),
|
||||
hasHighlights,
|
||||
fileSize,
|
||||
calculateProcessingErrorCounter(fileId, ProcessingStatus.PRE_PROCESSED));
|
||||
}
|
||||
|
||||
|
||||
@ -73,8 +73,8 @@ public interface FileRepository extends JpaRepository<FileEntity, String> {
|
||||
|
||||
|
||||
@Modifying(clearAutomatically = true)
|
||||
@Query("update FileEntity f set f.processingStatus = :processingStatus, f.lastUpdated = :lastUpdated," + " f.hasHighlights = :hasHighlights, f.fileSize = :fileSize, f.processingErrorCounter = :processingErrorCounter " + " where f.id = :fileId")
|
||||
void updateProcessingStatus(String fileId, ProcessingStatus processingStatus, OffsetDateTime lastUpdated, boolean hasHighlights, long fileSize, int processingErrorCounter);
|
||||
@Query("update FileEntity f set f.processingStatus = :processingStatus, f.lastUpdated = :lastUpdated," + " f.hasHighlights = :hasHighlights, f.processingErrorCounter = :processingErrorCounter " + " where f.id = :fileId")
|
||||
void updateProcessingStatus(String fileId, ProcessingStatus processingStatus, OffsetDateTime lastUpdated, boolean hasHighlights, int processingErrorCounter);
|
||||
|
||||
|
||||
@Modifying(clearAutomatically = true)
|
||||
|
||||
@ -71,7 +71,7 @@ public class FileService {
|
||||
} else {
|
||||
// the file is new, should create a new status for it.
|
||||
log.info("File {} has no status yet, creating one and setting to unprocessed.", request.getFilename());
|
||||
fileStatusService.createStatus(request.getDossierId(), request.getFileId(), request.getUploader(), request.getFilename());
|
||||
fileStatusService.createStatus(request.getDossierId(), request.getFileId(), request.getUploader(), request.getFilename(), request.getFileSize());
|
||||
}
|
||||
|
||||
return new JSONPrimitive<>(request.getFileId());
|
||||
|
||||
@ -278,9 +278,9 @@ public class FileStatusService {
|
||||
|
||||
|
||||
@Transactional
|
||||
public void createStatus(String dossierId, String fileId, String uploader, String filename) {
|
||||
public void createStatus(String dossierId, String fileId, String uploader, String filename, long fileSize) {
|
||||
|
||||
fileStatusPersistenceService.createStatus(dossierId, fileId, filename, uploader);
|
||||
fileStatusPersistenceService.createStatus(dossierId, fileId, filename, uploader, fileSize);
|
||||
addToAnalysisQueue(dossierId, fileId, false, Set.of(), false);
|
||||
}
|
||||
|
||||
|
||||
@ -74,7 +74,7 @@ public class FileTesterAndProvider {
|
||||
|
||||
var fileId = Base64.encodeBase64String((dossier.getId() + fileName).getBytes(StandardCharsets.UTF_8));
|
||||
|
||||
AddFileRequest upload = new AddFileRequest(fileName, fileId, dossier.getId(), "1");
|
||||
AddFileRequest upload = new AddFileRequest(fileName, fileId, dossier.getId(), "1", 1);
|
||||
fileManagementStorageService.storeObject(dossier.getId(), fileId, FileType.UNTOUCHED, new ByteArrayInputStream("test".getBytes(StandardCharsets.UTF_8)));
|
||||
JSONPrimitive<String> uploadResult = uploadClient.upload(upload, false);
|
||||
|
||||
|
||||
@ -136,7 +136,7 @@ public class FileTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
assertThat(viewedPages.size()).isEqualTo(1);
|
||||
|
||||
AddFileRequest upload = new AddFileRequest(filename, file.getId(), dossier.getId(), "1");
|
||||
AddFileRequest upload = new AddFileRequest(filename, file.getId(), dossier.getId(), "1", 1);
|
||||
JSONPrimitive<String> uploadResult = uploadClient.upload(upload, false);
|
||||
|
||||
loadedFile = fileClient.getFileStatus(dossier.getId(), uploadResult.getValue());
|
||||
@ -174,7 +174,7 @@ public class FileTest extends AbstractPersistenceServerServiceTest {
|
||||
|
||||
assertThat(viewedPages).hasSize(1);
|
||||
|
||||
AddFileRequest upload = new AddFileRequest(filename, file.getId(), dossier.getId(), "1");
|
||||
AddFileRequest upload = new AddFileRequest(filename, file.getId(), dossier.getId(), "1", 1);
|
||||
JSONPrimitive<String> uploadResult = uploadClient.upload(upload, true);
|
||||
|
||||
loadedFile = fileClient.getFileStatus(dossier.getId(), uploadResult.getValue());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user