Loading plugins/org.etsi.mts.tdl.openapi.generator.ui/src/org/etsi/mts/tdl/openapi/generator/ui/handlers/GeneratorHandler.java +35 −19 Original line number Diff line number Diff line Loading @@ -72,6 +72,14 @@ public class GeneratorHandler extends AbstractHandler { if (file !=null && file.getName().endsWith("yaml")) { String selectedTarget = null; IFile javaConfig = file.getProject().getFile("openapi-codegen-config-impl.json"); if (javaConfig.exists()) { selectedTarget = "java"; } if (selectedTarget == null) { ElementListSelectionDialog dialog = new ElementListSelectionDialog(Display.getDefault().getActiveShell(), new LabelProvider()); dialog.setTitle("OpenAPI Generator Target Selection"); dialog.setMessage("Generating assets from "+file.getName() Loading @@ -79,8 +87,6 @@ public class GeneratorHandler extends AbstractHandler { dialog.setElements(targetFormats.keySet().toArray()); dialog.setInitialElementSelections(Arrays.asList(new String[] {GeneratorHandler.translationTarget})); //TODO: add option to skip validation //TODO: add step to validate // user pressed cancel if (dialog.open() != Window.OK) { Loading @@ -91,9 +97,19 @@ public class GeneratorHandler extends AbstractHandler { // OpenAPIGeneratorLauncher.parse(file.getLocation().toFile().getAbsolutePath()); Object[] result = dialog.getResult(); String selected = (String)result[0]; translationTarget = selected; OpenAPIGeneratorLauncher.launch(file.getLocation().toFile().getAbsolutePath(), selected); selectedTarget = (String)result[0]; } } //TODO: add option to skip validation //TODO: add step to validate if (selectedTarget != null) { translationTarget = selectedTarget; if (javaConfig.exists()) OpenAPIGeneratorLauncher.launch(file.getLocation().toFile(), javaConfig.getLocation().toFile(), selectedTarget); else OpenAPIGeneratorLauncher.launch(file.getLocation().toFile().getAbsolutePath(), selectedTarget); } } return null; Loading plugins/org.etsi.mts.tdl.openapi.generator.ui/src/org/etsi/mts/tdl/openapi/generator/ui/handlers/OpenAPIGeneratorLauncher.java +23 −8 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package org.etsi.mts.tdl.openapi.generator.ui.handlers; import java.io.File; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; Loading Loading @@ -40,18 +41,32 @@ public class OpenAPIGeneratorLauncher { } public static void launch(String input, String target) { launch(input, target, true); launch(input, null, target, null, true); } public static void launch(String input, String target, boolean skipValidation) { public static void launch(File input, File config, String target) { launch(input.getAbsolutePath(), config.getAbsolutePath(), target, null, true); } public static void launch(String input, String config, String target, String output, boolean skipValidation) { if (output == null) { String inputFolder = new File(input).getParentFile().getAbsolutePath(); String output = inputFolder+"/generated/"+target+"/"; output = inputFolder+"/generated/"+target+"/"; new File(output).mkdirs(); String skip = ""; } List<String> args = new ArrayList<String>( Arrays.asList(new String[] { "generate", "-g", target, "-i", input, "-o", output })); if (config != null) { args.add("-c"); args.add(config); } if (skipValidation) { skip = "--skip-validate-spec"; args.add("--skip-validate-spec"); } OpenAPIGenerator.main(new String[] {"generate", "-g", target, "-i", input, "-o", output, skip}); OpenAPIGenerator.main(args.toArray(new String[args.size()])); } public static void validate(String input) { Loading Loading
plugins/org.etsi.mts.tdl.openapi.generator.ui/src/org/etsi/mts/tdl/openapi/generator/ui/handlers/GeneratorHandler.java +35 −19 Original line number Diff line number Diff line Loading @@ -72,6 +72,14 @@ public class GeneratorHandler extends AbstractHandler { if (file !=null && file.getName().endsWith("yaml")) { String selectedTarget = null; IFile javaConfig = file.getProject().getFile("openapi-codegen-config-impl.json"); if (javaConfig.exists()) { selectedTarget = "java"; } if (selectedTarget == null) { ElementListSelectionDialog dialog = new ElementListSelectionDialog(Display.getDefault().getActiveShell(), new LabelProvider()); dialog.setTitle("OpenAPI Generator Target Selection"); dialog.setMessage("Generating assets from "+file.getName() Loading @@ -79,8 +87,6 @@ public class GeneratorHandler extends AbstractHandler { dialog.setElements(targetFormats.keySet().toArray()); dialog.setInitialElementSelections(Arrays.asList(new String[] {GeneratorHandler.translationTarget})); //TODO: add option to skip validation //TODO: add step to validate // user pressed cancel if (dialog.open() != Window.OK) { Loading @@ -91,9 +97,19 @@ public class GeneratorHandler extends AbstractHandler { // OpenAPIGeneratorLauncher.parse(file.getLocation().toFile().getAbsolutePath()); Object[] result = dialog.getResult(); String selected = (String)result[0]; translationTarget = selected; OpenAPIGeneratorLauncher.launch(file.getLocation().toFile().getAbsolutePath(), selected); selectedTarget = (String)result[0]; } } //TODO: add option to skip validation //TODO: add step to validate if (selectedTarget != null) { translationTarget = selectedTarget; if (javaConfig.exists()) OpenAPIGeneratorLauncher.launch(file.getLocation().toFile(), javaConfig.getLocation().toFile(), selectedTarget); else OpenAPIGeneratorLauncher.launch(file.getLocation().toFile().getAbsolutePath(), selectedTarget); } } return null; Loading
plugins/org.etsi.mts.tdl.openapi.generator.ui/src/org/etsi/mts/tdl/openapi/generator/ui/handlers/OpenAPIGeneratorLauncher.java +23 −8 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package org.etsi.mts.tdl.openapi.generator.ui.handlers; import java.io.File; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; Loading Loading @@ -40,18 +41,32 @@ public class OpenAPIGeneratorLauncher { } public static void launch(String input, String target) { launch(input, target, true); launch(input, null, target, null, true); } public static void launch(String input, String target, boolean skipValidation) { public static void launch(File input, File config, String target) { launch(input.getAbsolutePath(), config.getAbsolutePath(), target, null, true); } public static void launch(String input, String config, String target, String output, boolean skipValidation) { if (output == null) { String inputFolder = new File(input).getParentFile().getAbsolutePath(); String output = inputFolder+"/generated/"+target+"/"; output = inputFolder+"/generated/"+target+"/"; new File(output).mkdirs(); String skip = ""; } List<String> args = new ArrayList<String>( Arrays.asList(new String[] { "generate", "-g", target, "-i", input, "-o", output })); if (config != null) { args.add("-c"); args.add(config); } if (skipValidation) { skip = "--skip-validate-spec"; args.add("--skip-validate-spec"); } OpenAPIGenerator.main(new String[] {"generate", "-g", target, "-i", input, "-o", output, skip}); OpenAPIGenerator.main(args.toArray(new String[args.size()])); } public static void validate(String input) { Loading