package org.overture.ide.plugins.javagen.commands; import java.util.List; import org.eclipse.core.resources.IProject; import org.overture.codegen.vdm2java.JavaSettings; import org.overture.ide.plugins.javagen.CodeGenConsole; import org.overture.ide.plugins.javagen.util.LaunchConfigData; import org.overture.ide.plugins.javagen.util.PluginVdm2JavaUtil; public class Vdm2JavaLaunchConfigCommand extends Vdm2JavaCommand { @Override public JavaSettings getJavaSettings(IProject project, List<String> classesToSkip) { List<LaunchConfigData> launchConfigs = PluginVdm2JavaUtil.getProjectLaunchConfigs(project); if (!launchConfigs.isEmpty()) { String entryExp = PluginVdm2JavaUtil.dialog(launchConfigs); if (entryExp != null) { JavaSettings javaSettings = super.getJavaSettings(project, classesToSkip); javaSettings.setVdmEntryExp(entryExp); return javaSettings; } else { CodeGenConsole.GetInstance().println("Process cancelled by user."); } } else { CodeGenConsole.GetInstance().println(PluginVdm2JavaUtil.WARNING + " No launch configuration could be found for this project.\n"); CodeGenConsole.GetInstance().println("Cancelling launch configuration based code generation...\n"); } return null; } }