diff --git a/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/DBWServiceDataTransfer.java b/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/DBWServiceDataTransfer.java index 0f75fa924a..abf086b77a 100644 --- a/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/DBWServiceDataTransfer.java +++ b/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/DBWServiceDataTransfer.java @@ -49,6 +49,6 @@ public interface DBWServiceDataTransfer extends DBWService { WebDataTransferParameters parameters) throws DBWebException; @WebAction - Boolean dataTransferRemoveDataFile(WebSQLProcessor sqlProcessor, String dataFileId) throws DBWebException; + Boolean dataTransferRemoveDataFile(WebSession session, String dataFileId) throws DBWebException; } diff --git a/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/impl/WebServiceDataTransfer.java b/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/impl/WebServiceDataTransfer.java index 20bdf7432e..ac90b8d9b2 100644 --- a/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/impl/WebServiceDataTransfer.java +++ b/server/bundles/io.cloudbeaver.service.data.transfer/src/io/cloudbeaver/service/data/transfer/impl/WebServiceDataTransfer.java @@ -117,7 +117,20 @@ public class WebServiceDataTransfer implements DBWServiceDataTransfer { } @Override - public Boolean dataTransferRemoveDataFile(WebSQLProcessor sqlProcessor, String dataFileId) { + public Boolean dataTransferRemoveDataFile(WebSession webSession, String dataFileId) throws DBWebException { + WebDataTransferSessionConfig dtConfig = WebDataTransferUtils.getSessionDataTransferConfig(webSession); + WebDataTransferTaskConfig taskInfo = dtConfig.getTask(dataFileId); + if (taskInfo == null) { + throw new DBWebException("Session task '" + dataFileId + "' not found"); + } + File dataFile = taskInfo.getDataFile(); + if (dataFile != null) { + if (!dataFile.delete()) { + log.warn("Error deleting data file '" + dataFile.getAbsolutePath() + "'"); + } + } + dtConfig.removeTask(taskInfo); + return true; }