diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java index f5808d651fc003824b32f08edee4b5b159d8f35c..3e50716bee14459b2b61276b1b0f3f44b760e7b5 100644 --- a/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java +++ b/rest-api/src/main/java/lcsb/mapviewer/api/projects/ProjectRestImpl.java @@ -16,6 +16,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Comparator; import java.util.HashSet; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; @@ -124,17 +125,30 @@ public class ProjectRestImpl extends BaseRestImpl { } private Map<String, Object> createData(Project project) { - Map<String, Object> result = new TreeMap<>(); + Map<String, Object> result = new LinkedHashMap<>(); - result.put("name", project.getName()); - result.put("projectId", project.getProjectId()); - result.put("idObject", project.getId()); result.put("version", project.getVersion()); - result.put("notifyEmail", project.getNotifyEmail()); + if (project.getDisease() != null) { + result.put("disease", createAnnotation(project.getDisease())); + } else { + result.put("disease", null); + } + if (project.getOrganism() != null) { + result.put("organism", createAnnotation(project.getOrganism())); + } else { + result.put("organism", null); + } + result.put("idObject", project.getId()); if (project.getStatus() != null) { result.put("status", project.getStatus().toString()); } + result.put("directory", project.getDirectory()); result.put("progress", project.getProgress()); + result.put("notifyEmail", project.getNotifyEmail()); + result.put("warnings", project.getWarnings().size() > 0); + result.put("errors", project.getErrors() != null && !project.getErrors().isEmpty()); + result.put("name", project.getName()); + result.put("projectId", project.getProjectId()); List<Map<String, Object>> images = new ArrayList<>(); for (OverviewImage image : project.getOverviewImages()) { @@ -151,22 +165,14 @@ public class ProjectRestImpl extends BaseRestImpl { } } } - result.put("warnings", project.getWarnings().size() > 0); - result.put("directory", project.getDirectory()); - result.put("errors", project.getErrors() != null && !project.getErrors().isEmpty()); if (set.size() > 0) { result.put("topOverviewImage", imageToMap(set.iterator().next())); } else if (project.getOverviewImages().size() > 0) { logger.warn( "Cannot determine top level image. Taking first one. " + project.getOverviewImages().get(0).getFilename()); result.put("topOverviewImage", imageToMap(project.getOverviewImages().get(0))); - } - - if (project.getOrganism() != null) { - result.put("organism", createAnnotation(project.getOrganism())); - } - if (project.getDisease() != null) { - result.put("disease", createAnnotation(project.getDisease())); + } else { + result.put("topOverviewImage", null); } return result;