Improved code

This commit is contained in:
Luca Frosini 2023-02-08 15:57:36 +01:00
parent 81e163b7c9
commit 9e73e053ea
2 changed files with 15 additions and 4 deletions

View File

@ -23,14 +23,17 @@ public class TreeGenerator extends Generator {
private static final Logger logger = LoggerFactory.getLogger(TreeGenerator.class);
public static final String EXTENSION = ".rst";
public static final String FILENAME_SEPARATOR = "-";
protected RegistrationProvider rp;
protected boolean splittedFiles;
protected String desiredFileName;
public TreeGenerator(RegistrationProvider rp) {
super();
this.rp = rp;
this.splittedFiles = false;
this.desiredFileName = rp.getModelName().toLowerCase().replaceAll(" ", FILENAME_SEPARATOR);
}
public void setSplittedFiles(boolean splittedFiles) {
@ -39,6 +42,10 @@ public class TreeGenerator extends Generator {
}
this.splittedFiles = splittedFiles;
}
public void setDesiredFileName(String desiredFileName) {
this.desiredFileName = desiredFileName;
}
public void elaborateTree(final AccessType at, Tree<Class<Element>> tree, File file, RegistrationProvider rp) throws Exception {
logger.info("Going to elaborate the following type tree\n{}", tree.toString());
@ -73,11 +80,10 @@ public class TreeGenerator extends Generator {
}
protected String getFileName(AccessType accessType) {
String modelName = rp.getModelName();
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(modelName.toLowerCase().replaceAll(" ", "_"));
stringBuffer.append(desiredFileName);
if(accessType!=null && splittedFiles) {
stringBuffer.append("_");
stringBuffer.append(FILENAME_SEPARATOR);
stringBuffer.append(accessType.getName().toLowerCase());
}
stringBuffer.append(EXTENSION);

View File

@ -21,7 +21,12 @@ public class GenerateTest {
.load(RegistrationProvider.class);
for(RegistrationProvider rp : registrationProviders) {
TreeGenerator treeGenerator = new TreeGenerator(rp);
treeGenerator.setSplittedFiles(!(rp instanceof ISModelRegistrationProvider));
if(rp instanceof ISModelRegistrationProvider) {
treeGenerator.setSplittedFiles(false);
treeGenerator.setDesiredFileName("is-model");
}else {
treeGenerator.setSplittedFiles(true);
}
treeGenerator.generate();
}
}