@Override public void generate(Model model, MolgenisOptions options) throws Exception { Template template = createTemplate("/" + getClass().getSimpleName() + ".java.ftl"); Map<String, Object> templateArgs = createTemplateArguments(options); File target = new File(this.getDocumentationPath(options) + "/entitymodel.html"); target.getParentFile().mkdirs(); List<Entity> entityList = model.getEntities(); List<Module> moduleList = model.getModules(); entityList = MolgenisModel.sortEntitiesByDependency(entityList, model); // side effect? templateArgs.put("model", model); templateArgs.put("entities", entityList); templateArgs.put("modules", moduleList); OutputStream targetOut = new FileOutputStream(target); template.process(templateArgs, new OutputStreamWriter(targetOut)); targetOut.close(); logger.info("generated " + target); }