@Override public void createEntity(String entityName) { Path entityDir = project.getEntityDir(entityName); entityDir.toFile().mkdirs(); if(entityDir.toFile().exists()){ String fileContents = getFileContent("scaffolding/Entity.json", entityName); writeToFile(fileContents, entityDir.resolve(entityName + ".entity.json").toFile()); } }
@Override public void updateLegacyEntity(String entityName) { Path entityDir = project.getHubEntitiesDir().resolve(entityName); File[] entityFiles = entityDir.toFile().listFiles((dir, name) -> name.matches("[^.]+\\.entity\\.json")); if (entityFiles != null && entityFiles.length == 0) { String fileContents = getFileContent("scaffolding/Entity.json", entityName); writeToFile(fileContents, entityDir.resolve(entityName + ".entity.json").toFile()); } }
private void writeMetadataForFile(File file, String metadataTemplatePath, String metadataName) { String fileContent = getFileContent(metadataTemplatePath, metadataName); File metadataFile = createEmptyMetadataForFile(file, metadataName); writeToFile(fileContent, metadataFile); }
@Override public void createRestExtension(String entityName, String extensionName, FlowType flowType, CodeFormat codeFormat) throws ScaffoldingValidationException { logger.info(extensionName); if(!validator.isUniqueRestServiceExtension(extensionName)) { throw new ScaffoldingValidationException("A rest service extension with the same name as " + extensionName + " already exists."); } String scaffoldRestServicesPath = "scaffolding/rest/services/"; String fileContent = getFileContent(scaffoldRestServicesPath + codeFormat + "/template." + codeFormat, extensionName); File dstFile = createEmptyRestExtensionFile(entityName, extensionName, flowType, codeFormat); writeToFile(fileContent, dstFile); writeMetadataForFile(dstFile, scaffoldRestServicesPath + "metadata/template.xml", extensionName); }
@Override public void createRestTransform(String entityName, String transformName, FlowType flowType, CodeFormat codeFormat) throws ScaffoldingValidationException { logger.info(transformName); if(!validator.isUniqueRestTransform(transformName)) { throw new ScaffoldingValidationException("A rest transform with the same name as " + transformName + " already exists."); } String scaffoldRestTransformsPath = "scaffolding/rest/transforms/"; String fileContent = getFileContent(scaffoldRestTransformsPath + codeFormat + "/template." + codeFormat, transformName); File dstFile = createEmptyRestTransformFile(entityName, transformName, flowType, codeFormat); writeToFile(fileContent, dstFile); writeMetadataForFile(dstFile, scaffoldRestTransformsPath + "metadata/template.xml", transformName); }