From 39cfc09ab6e07a4cc3d5238c890b34b5a076dbfe Mon Sep 17 00:00:00 2001 From: "Cezar.Leahu" Date: Mon, 5 Nov 2018 19:14:38 +0200 Subject: [PATCH] ATS-191 : Delete temp target files after SFS upload --- .../transformer/AbstractTransformerController.java | 10 ++++++++++ .../java/org/alfresco/transformer/fs/FileManager.java | 8 ++++++++ 2 files changed, 18 insertions(+) diff --git a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java index 556a35d6..45ea2d7a 100644 --- a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java +++ b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/AbstractTransformerController.java @@ -27,6 +27,7 @@ package org.alfresco.transformer; import static org.alfresco.transformer.fs.FileManager.buildFile; import static org.alfresco.transformer.fs.FileManager.createTargetFileName; +import static org.alfresco.transformer.fs.FileManager.deleteFile; import static org.alfresco.transformer.fs.FileManager.getFilenameFromContentDisposition; import static org.alfresco.transformer.fs.FileManager.save; import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR; @@ -212,6 +213,15 @@ public abstract class AbstractTransformerController implements TransformControll return new ResponseEntity<>(reply, HttpStatus.valueOf(reply.getStatus())); } + try + { + deleteFile(targetFile); + } + catch (Exception e) + { + logger.error("Failed to delete target local temp file " + targetFile, e); + } + reply.setTargetReference(targetRef.getEntry().getFileRef()); reply.setStatus(HttpStatus.CREATED.value()); diff --git a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/fs/FileManager.java b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/fs/FileManager.java index e983733f..0d6fdc76 100644 --- a/alfresco-transformer-base/src/main/java/org/alfresco/transformer/fs/FileManager.java +++ b/alfresco-transformer-base/src/main/java/org/alfresco/transformer/fs/FileManager.java @@ -55,6 +55,14 @@ public class FileManager return TempFileProvider.createTempFile("target_", "_" + filename); } + public static void deleteFile(final File file) throws Exception + { + if (!file.delete()) + { + throw new Exception("Failed to delete file"); + } + } + /** * Checks the filename is okay to uses in a temporary file name. *