From 32c9490d76d1804b811326d6b68ee595222b55ef Mon Sep 17 00:00:00 2001 From: Eugene Yip Date: Wed, 28 Jul 2021 16:02:32 +0200 Subject: [PATCH] Wrapped file deletion during shared lib generation inside try/catch --- .../swt/dsl/common/generator/GeneratorProvider.java | 1 - .../dsl/generator/externals/ExternalGenerator.java | 11 ++++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/common/generator/GeneratorProvider.java b/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/common/generator/GeneratorProvider.java index 52610e4e..bf8bcde2 100644 --- a/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/common/generator/GeneratorProvider.java +++ b/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/common/generator/GeneratorProvider.java @@ -63,7 +63,6 @@ protected void cleanUp(IFileSystemAccess2 fsa) { } catch (Exception ex) { logger.warn(String.format("Failed to delete file: %s, msg: %s", name, ex.getMessage())); } - } } } diff --git a/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/generator/externals/ExternalGenerator.java b/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/generator/externals/ExternalGenerator.java index 791ba146..5f1135a9 100644 --- a/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/generator/externals/ExternalGenerator.java +++ b/src/de.uniba.swt.dsl/src/de/uniba/swt/dsl/generator/externals/ExternalGenerator.java @@ -25,14 +25,15 @@ package de.uniba.swt.dsl.generator.externals; import de.uniba.swt.dsl.common.fsa.FsaUtil; -import org.eclipse.xtext.generator.AbstractFileSystemAccess; -import org.eclipse.xtext.generator.AbstractFileSystemAccess2; +import org.apache.log4j.Logger; import org.eclipse.xtext.generator.IFileSystemAccess2; import java.util.Arrays; public abstract class ExternalGenerator { + private static final Logger logger = Logger.getLogger(ExternalGenerator.class); + protected abstract String[] supportedTools(); protected boolean executeArgs(String[] args, IFileSystemAccess2 fsa, CliRuntimeExecutor runtimeExec) { @@ -60,7 +61,11 @@ protected void cleanUp(IFileSystemAccess2 fsa) { var names = generatedFileNames(); if (names != null) { for (String name : names) { - fsa.deleteFile(name); + try { + fsa.deleteFile(name); + } catch (Exception ex) { + logger.warn(String.format("Failed to delete file: %s, msg: %s", name, ex.getMessage())); + } } } }