Skip to content

Commit

Permalink
#357:Changed directory to get json schema and java files
Browse files Browse the repository at this point in the history
  • Loading branch information
ArthurGrenier authored and ArthurGrenier committed Jun 17, 2021
1 parent f3a071a commit ee7c05d
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 35 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,9 @@ public String getTemplateSchema(CustomEntityTemplate cet) {
public File generateCRTSourceFile(String templateSchema, CustomRelationshipTemplate crt) throws BusinessException {
log.info("Generating source file for {}", crt);

final File cetDir = customRelationshipTemplateService.getCrtDir(crt);
final File cetDirJava = customRelationshipTemplateService.getCrtDir(crt, "java");
final CompilationUnit compilationUnit = jsonSchemaIntoJavaClassParser.parseJsonContentIntoJavaFile(templateSchema, crt);
File javaFile = new File(cetDir, crt.getCode() + ".java");
File javaFile = new File(cetDirJava, crt.getCode() + ".java");
if (javaFile.exists()) {
javaFile.delete();
}
Expand Down Expand Up @@ -129,11 +129,11 @@ public File getJsonCetDir(CustomEntityTemplate cet) {
BusinessService businessService = businessServiceFinder.find(cet);
MeveoModule module = businessService.findModuleOf(cet);
if (module == null) {
repositoryDir = GitHelper.getRepositoryDir(currentUser, meveoRepository.getCode() + "/src/main/java/");
path = "org/meveo/model/customEntities";
repositoryDir = GitHelper.getRepositoryDir(currentUser, meveoRepository.getCode() + "/facets/json/");
path = "";
} else {
repositoryDir = GitHelper.getRepositoryDir(currentUser, module.getGitRepository().getCode());
path = "/customEntityTemplates/" + cet.getCode();
repositoryDir = GitHelper.getRepositoryDir(currentUser, module.getGitRepository().getCode() + "/facets/json/");
path = "";
}
return new File(repositoryDir, path);
}
Expand All @@ -145,11 +145,11 @@ public File getJavaCetDir(CustomEntityTemplate cet) {
BusinessService businessService = businessServiceFinder.find(cet);
MeveoModule module = businessService.findModuleOf(cet);
if (module == null) {
repositoryDir = GitHelper.getRepositoryDir(currentUser, meveoRepository.getCode() + "/src/main/java");
path = "org/meveo/model/customEntities";
repositoryDir = GitHelper.getRepositoryDir(currentUser, meveoRepository.getCode() + "/facets/java");
path = "";
} else {
repositoryDir = GitHelper.getRepositoryDir(currentUser, module.getGitRepository().getCode() + "/src/main/java");
path = "org/meveo/model/customEntities";
repositoryDir = GitHelper.getRepositoryDir(currentUser, module.getGitRepository().getCode() + "/facets/java");
path = "";
}
return new File(repositoryDir, path);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -312,18 +312,30 @@ public List<CustomRelationshipTemplate> findBySourceOrTarget(String source, Stri
.getResultList();
}

public File getCrtDir(CustomRelationshipTemplate crt) {
/**
* Get directory the java or the json schema of a crt
* @param crt code your a looking for
* @param extension the file you target (json or java)
* @return file
*/
public File getCrtDir(CustomRelationshipTemplate crt, String extension) {
File repositoryDir;
String path;
String directory = "";

if (extension == "json") {
directory = "facets/json";
}else if (extension == "java") {
directory = "facets/java";
}
MeveoModule module = customRelationshipTemplateService.findModuleOf(crt);
if (module == null) {
repositoryDir = GitHelper.getRepositoryDir(currentUser, meveoRepository.getCode());
path = "custom/relationships";
path = directory;
} else {
repositoryDir = GitHelper.getRepositoryDir(currentUser, module.getGitRepository().getCode());
path = "customRelationShipTemplates/" + crt.getCode();
path = directory;
}
return new File(repositoryDir, path);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -281,7 +281,7 @@ public void remove(CustomRelationshipTemplateDto dto) throws MeveoApiException,
this.removeCustomRelationshipTemplate(dto.getCode());
}

@Override

public boolean validateModuleFileName (String fileName) {
boolean validation = true;
if (fileName.endsWith("-schema.json"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -366,14 +366,14 @@ public void crtCreated(@Observes(during = TransactionPhase.AFTER_SUCCESS) @Creat

final String templateSchema = getTemplateSchema(crt);

final File crtDir = customRelationshipTemplateService.getCrtDir(crt);
final File crtDirJson = customRelationshipTemplateService.getCrtDir(crt, "json");

if (!crtDir.exists()) {
crtDir.mkdirs();
commitFiles.add(crtDir);
if (!crtDirJson.exists()) {
crtDirJson.mkdirs();
commitFiles.add(crtDirJson);
}

File schemaFile = new File(crtDir, crt.getCode() + "-schema.json");
File schemaFile = new File(crtDirJson, crt.getCode() + "-schema.json");
if (schemaFile.exists()) {
schemaFile.delete();
}
Expand Down Expand Up @@ -404,14 +404,14 @@ public void crtUpdated(@Observes(during = TransactionPhase.AFTER_SUCCESS) @Updat

final String templateSchema = getTemplateSchema(crt);

final File crtDir = customRelationshipTemplateService.getCrtDir(crt);
final File crtDirJson = customRelationshipTemplateService.getCrtDir(crt, "json");

// This is for retro-compatibility, in case a CRT created before 6.4.0 is updated
if (!crtDir.exists()) {
crtDir.mkdirs();
if (!crtDirJson.exists()) {
crtDirJson.mkdirs();
}

File schemaFile = new File(crtDir, crt.getCode() + "-schema.json");
File schemaFile = new File(crtDirJson, crt.getCode() + "-schema.json");
if (schemaFile.exists()) {
schemaFile.delete();
}
Expand Down Expand Up @@ -440,13 +440,14 @@ public void crtUpdated(@Observes(during = TransactionPhase.AFTER_SUCCESS) @Updat
*/
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public void crtRemoved(@Observes(during = TransactionPhase.AFTER_SUCCESS) @Removed CustomRelationshipTemplate crt) throws BusinessException {
final File cetDir = customRelationshipTemplateService.getCrtDir(crt);
final File schemaFile = new File(cetDir, crt.getCode() + "-schema.json");
final File cetDirJson = customRelationshipTemplateService.getCrtDir(crt, "json");
final File cetDirJava = customRelationshipTemplateService.getCrtDir(crt, "java");
final File schemaFile = new File(cetDirJson, crt.getCode() + "-schema.json");
if (schemaFile.exists()) {
schemaFile.delete();
}

final File javaFile = new File(cetDir, crt.getCode() + ".java");
final File javaFile = new File(cetDirJava, crt.getCode() + ".java");
if (javaFile.exists()) {
javaFile.delete();
}
Expand Down Expand Up @@ -512,7 +513,7 @@ public void cftCreated(@Observes @Created CustomFieldTemplate cft) throws IOExce

} else if (cft.getAppliesTo().startsWith(CustomRelationshipTemplate.CRT_PREFIX)) {
CustomRelationshipTemplate crt = cache.getCustomRelationshipTemplate(cft.getAppliesTo().replaceAll("CRT_(.*)", "$1"));
final File cetDir = customRelationshipTemplateService.getCrtDir(crt);
final File cetDir = customRelationshipTemplateService.getCrtDir(crt, "json");

// This is for retro-compatibility, in case a we add a field to a CET created before 6.4.0
if (!cetDir.exists()) {
Expand Down Expand Up @@ -593,14 +594,14 @@ public void cftUpdated(@Observes(during = TransactionPhase.AFTER_SUCCESS) @Updat

} else if (cft.getAppliesTo().startsWith(CustomRelationshipTemplate.CRT_PREFIX)) {
CustomRelationshipTemplate crt = cache.getCustomRelationshipTemplate(cft.getAppliesTo().replaceAll("CRT_(.*)", "$1"));
final File cetDir = customRelationshipTemplateService.getCrtDir(crt);
final File cetDirJson = customRelationshipTemplateService.getCrtDir(crt, "json");

// This is for retro-compatibility, in case we update a field of a CET created before 6.4.0
if (!cetDir.exists()) {
cetDir.mkdirs();
if (!cetDirJson.exists()) {
cetDirJson.mkdirs();
}

File schemaFile = new File(cetDir, crt.getCode() + ".json");
File schemaFile = new File(cetDirJson, crt.getCode() + ".json");

if (schemaFile.exists()) {
schemaFile.delete();
Expand Down Expand Up @@ -675,14 +676,14 @@ public void cftRemoved(@Observes(during = TransactionPhase.AFTER_SUCCESS) @Remov
return;
}

final File cetDir = customRelationshipTemplateService.getCrtDir(crt);
final File cetDirJson = customRelationshipTemplateService.getCrtDir(crt, "json");

if (!cetDir.exists()) {
if (!cetDirJson.exists()) {
// Nothing to delete
return;
}

File schemaFile = new File(cetDir, crt.getCode() + ".json");
File schemaFile = new File(cetDirJson, crt.getCode() + ".json");

if (schemaFile.exists()) {
schemaFile.delete();
Expand Down

0 comments on commit ee7c05d

Please sign in to comment.