
io.zenwave360.generator.plugins.OpenAPIToJDLPlugin Maven / Gradle / Ivy
package io.zenwave360.generator.plugins;
import io.zenwave360.generator.Plugin;
import io.zenwave360.generator.doc.DocumentedPlugin;
import io.zenwave360.generator.parsers.DefaultYamlParser;
import io.zenwave360.generator.processors.OpenApiProcessor;
import io.zenwave360.generator.writers.TemplateFileWriter;
import io.zenwave360.generator.writers.TemplateStdoutWriter;
@DocumentedPlugin(value = "Generates JDL model from OpenAPI schemas", shortCode = "openapi-to-jdl")
public class OpenAPIToJDLPlugin extends Plugin {
public OpenAPIToJDLPlugin() {
super();
withChain(DefaultYamlParser.class, OpenApiProcessor.class, OpenAPIToJDLGenerator.class, TemplateFileWriter.class);
}
@Override
public T processOptions() {
if (!getOptions().containsKey("targetFolder") && !getOptions().containsKey("targetFile")) {
replaceInChain(TemplateFileWriter.class, TemplateStdoutWriter.class);
}
return (T) this;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy