public ProjectTemplateProjectGen(ProjectTemplate template) { props.put("PARENT_GROUPID", template.getParentGroupId()); props.put("PARENT_ARTIFACTID", template.getParentArtifactId()); props.put("PARENT_VERSION", template.getParentVersion()); props.put("GROUPID", template.getGroupId()); props.put("ARTIFACTID", template.getArtifactId()); props.put("VERSION", template.getVersion()); props.put("APILEVEL", template.getApiLevel()); this.template = template; }
@Override public void generate(File outputFile) throws OutputProjectException { LOG.info("Generating: " + outputFile); Document pom = FilteredFileUtil.loadExpandedXml(template.getTemplateName(), props); if (template.hasDependencies()) { Element deps = (Element) pom.selectSingleNode("/project/dependencies"); if (deps == null) { pom.getRootElement().addElement("dependencies"); } for (ProjectDependency pd : template.getDependencies()) { ProjectTemplate proj = pd.getProject(); Element dep = deps.addElement("dependency"); dep.addElement("groupId").addText(proj.getGroupId()); dep.addElement("artifactId").addText(proj.getArtifactId()); dep.addElement("version").addText(proj.getVersion()); } } FilteredFileUtil.write(pom, outputFile); }