diff --git a/src/main/java/eu/hbp/mip/controllers/AlgorithmsAPI.java b/src/main/java/eu/hbp/mip/controllers/AlgorithmsAPI.java index af7b96607a4826493220847cf5902a35557e4bf0..1fb02b09de4f10fc3534870966ae377a3a863d8e 100644 --- a/src/main/java/eu/hbp/mip/controllers/AlgorithmsAPI.java +++ b/src/main/java/eu/hbp/mip/controllers/AlgorithmsAPI.java @@ -30,6 +30,7 @@ import java.io.IOException; import java.net.ConnectException; import java.util.ArrayList; import java.util.List; +import java.util.Objects; import static eu.hbp.mip.utils.InputStreamConverter.convertInputStreamToString; import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; @@ -74,6 +75,14 @@ public class AlgorithmsAPI { ArrayList<ExaremeAlgorithmDTO> galaxyAlgorithms = getGalaxyWorkflows(logger); ArrayList<ExaremeAlgorithmDTO> algorithms = new ArrayList<>(); + + // Remove Exareme algorithms that exist in the Exareme2 + if (mipengineAlgorithms != null && exaremeAlgorithms != null){ + for (ExaremeAlgorithmDTO algorithm : mipengineAlgorithms) { + exaremeAlgorithms.removeIf(obj -> Objects.equals(obj.getName(), algorithm.getName())); + } + } + if (exaremeAlgorithms != null) { algorithms.addAll(exaremeAlgorithms); logger.LogUserAction("Loaded " + exaremeAlgorithms.size() + " exareme algorithms"); @@ -100,6 +109,8 @@ public class AlgorithmsAPI { logger.LogUserAction("The disabled algorithms could not be loaded."); } + + // Remove any disabled algorithm ArrayList<ExaremeAlgorithmDTO> allowedAlgorithms = new ArrayList<>(); for (ExaremeAlgorithmDTO algorithm : algorithms) { diff --git a/src/main/java/eu/hbp/mip/models/DTOs/MIPEngineAlgorithmDTO.java b/src/main/java/eu/hbp/mip/models/DTOs/MIPEngineAlgorithmDTO.java index 8f908902c80613f03df2738758144b56f07b552f..8a9e0cc5653167ceae5e3073cf12aed42a31fcc3 100644 --- a/src/main/java/eu/hbp/mip/models/DTOs/MIPEngineAlgorithmDTO.java +++ b/src/main/java/eu/hbp/mip/models/DTOs/MIPEngineAlgorithmDTO.java @@ -49,7 +49,7 @@ public class MIPEngineAlgorithmDTO { @SerializedName("multiple") private String multiple; - @SerializedName("types") + @SerializedName("type") private String type; @SerializedName("desc") @@ -61,7 +61,7 @@ public class MIPEngineAlgorithmDTO { @SerializedName("max") private String max; - @SerializedName("default_value") + @SerializedName("default") private String default_value; @SerializedName("enums")