use of org.eclipse.vorto.codegen.mqtt.templates.IClientHandlerTemplate in project vorto by eclipse.
the class MQTTPlatformGenerator method generate.
@Override
public IGenerationResult generate(InformationModel context, InvocationContext invocationContext, IVortoCodeGenProgressMonitor monitor) throws VortoCodeGeneratorException {
GenerationResultZip outputter = new GenerationResultZip(context, getServiceKey());
for (FunctionblockProperty property : context.getProperties()) {
ChainedCodeGeneratorTask<FunctionblockModel> generator = new ChainedCodeGeneratorTask<FunctionblockModel>();
if (property.getType().getFunctionblock().getStatus() != null) {
generator.addTask(new GeneratorTaskFromFileTemplate<>(new IClientHandlerTemplate()));
generator.addTask(new GeneratorTaskFromFileTemplate<>(new MqttConfigurationTemplate()));
}
generator.addTask(new GeneratorTaskFromFileTemplate<>(new PomTemplate()));
generator.generate(property.getType(), invocationContext, outputter);
}
IGenerationResult javaResult = invocationContext.lookupGenerator(JavabeanGenerator.KEY).generate(context, invocationContext, monitor);
return GenerationResultBuilder.from(outputter).append(javaResult).build();
}
Aggregations