From 82c131267c4de8e4e6eb4dd7e94225dfc70a01c5 Mon Sep 17 00:00:00 2001 From: kfilippopolitis <kostasfilippop@gmail.com> Date: Fri, 9 Jul 2021 07:07:13 -0700 Subject: [PATCH] Add the TabularVisualizationDTO class --- .../models/DTOs/TabularVisualizationDTO.java | 33 +++++++++++++++++++ .../eu/hbp/mip/services/GalaxyService.java | 2 ++ 2 files changed, 35 insertions(+) create mode 100644 src/main/java/eu/hbp/mip/models/DTOs/TabularVisualizationDTO.java diff --git a/src/main/java/eu/hbp/mip/models/DTOs/TabularVisualizationDTO.java b/src/main/java/eu/hbp/mip/models/DTOs/TabularVisualizationDTO.java new file mode 100644 index 000000000..3e17932f7 --- /dev/null +++ b/src/main/java/eu/hbp/mip/models/DTOs/TabularVisualizationDTO.java @@ -0,0 +1,33 @@ +package eu.hbp.mip.models.DTOs; + +import lombok.AllArgsConstructor; +import lombok.Data; + +import java.util.HashMap; +import java.util.List; + +@Data +@AllArgsConstructor +public class TabularVisualizationDTO { + private final String name; + private final String profile; + private final HashMap<String, List<Field>> schema; + private final List<List<Object>> data; + + + public TabularVisualizationDTO(MIPEngineAlgorithmResultDTO mipEngineAlgorithmResultDTO) { + HashMap<String, List<TabularVisualizationDTO.Field>> schema = new HashMap<>(); + schema.put("fields", mipEngineAlgorithmResultDTO.getColumns()); + this.name = mipEngineAlgorithmResultDTO.getTitle(); + this.profile = "tabular-data-resource"; + this.schema = schema; + this.data = mipEngineAlgorithmResultDTO.getData(); + } + @Data + @AllArgsConstructor + public static class Field { + private final String name; + private final String type; + } +} + diff --git a/src/main/java/eu/hbp/mip/services/GalaxyService.java b/src/main/java/eu/hbp/mip/services/GalaxyService.java index 80590c7be..cc10afebd 100644 --- a/src/main/java/eu/hbp/mip/services/GalaxyService.java +++ b/src/main/java/eu/hbp/mip/services/GalaxyService.java @@ -20,6 +20,7 @@ import eu.hbp.mip.models.galaxy.GalaxyWorkflowResult; import eu.hbp.mip.models.galaxy.PostWorkflowToGalaxyDtoResponse; import eu.hbp.mip.repositories.ExperimentRepository; import eu.hbp.mip.utils.Exceptions.BadRequestException; +import eu.hbp.mip.utils.Exceptions.InternalServerError; import eu.hbp.mip.utils.JsonConverters; import eu.hbp.mip.utils.Logger; import org.codehaus.jettison.json.JSONException; @@ -364,6 +365,7 @@ public class GalaxyService { sleep(2000); } catch (InterruptedException e) { Logger.LogExperimentAction(experimentDAO.getName(), experimentDAO.getUuid(), "Sleep was disrupted: " + e.getMessage()); + throw new InternalServerError(e.getMessage()); } Logger.LogExperimentAction(experimentDAO.getName(), experimentDAO.getUuid(), "Fetching status for experiment Id: " + experimentDAO.getUuid()); -- GitLab