use of org.eclipse.vorto.plugin.generator.utils.ChainedCodeGeneratorTask in project vorto by eclipse.
the class EclipseDittoGenerator method generate.
@Override
public IGenerationResult generate(InformationModel infomodel, InvocationContext invocationContext) {
String target = invocationContext.getConfigurationProperties().getOrDefault("target", "");
if (THING_JSON.equalsIgnoreCase(target)) {
SingleGenerationResult output = new SingleGenerationResult("application/json");
new GeneratorTaskFromFileTemplate<>(DITTO_THING_JSON_TEMPLATE).generate(infomodel, invocationContext, output);
return output;
}
if (JSON_SCHEMA.equalsIgnoreCase(target)) {
GenerationResultZip zipOutput = new GenerationResultZip(infomodel, GENERATOR_KEY);
ChainedCodeGeneratorTask<InformationModel> generator = new ChainedCodeGeneratorTask<>();
generator.addTask(new SchemaValidatorTask());
generator.generate(infomodel, invocationContext, zipOutput);
GenerationResultBuilder result = GenerationResultBuilder.from(zipOutput);
return result.build();
}
throw new IllegalArgumentException("The request parameter 'target' is required. It must have one of the values ('jsonSchema', " + "'thingJson')");
}
Aggregations