Skip to content
Snippets Groups Projects
Commit 2e6de1ad authored by ThanKarab's avatar ThanKarab
Browse files

Fixes for optional transformers parsing.

parent da8c6b6f
No related branches found
No related tags found
No related merge requests found
...@@ -19,7 +19,7 @@ public class Exareme2AlgorithmRequestDTO { ...@@ -19,7 +19,7 @@ public class Exareme2AlgorithmRequestDTO {
@SerializedName("preprocessing") @SerializedName("preprocessing")
private HashMap<String, Object> preprocessing; private HashMap<String, Object> preprocessing;
public Exareme2AlgorithmRequestDTO(UUID experimentUUID, List<ExaremeAlgorithmRequestParamDTO> exaremeAlgorithmRequestParamDTOs, List<ExaremeAlgorithmDTO.Transformer> exaremeTransformers) { public Exareme2AlgorithmRequestDTO(UUID experimentUUID, List<ExaremeAlgorithmRequestParamDTO> exaremeAlgorithmRequestParamDTOs, List<ExaremeAlgorithmDTO.ExaremeTransformerDTO> exaremeTransformers) {
this.request_id = experimentUUID.toString(); this.request_id = experimentUUID.toString();
Exareme2AlgorithmRequestDTO.InputData inputData = new Exareme2AlgorithmRequestDTO.InputData(); Exareme2AlgorithmRequestDTO.InputData inputData = new Exareme2AlgorithmRequestDTO.InputData();
HashMap<String, Object> exareme2Parameters = new HashMap<>(); HashMap<String, Object> exareme2Parameters = new HashMap<>();
...@@ -51,7 +51,7 @@ public class Exareme2AlgorithmRequestDTO { ...@@ -51,7 +51,7 @@ public class Exareme2AlgorithmRequestDTO {
exareme2Parameters.put(parameter.getName(), convertStringToMultipleValues(parameter.getValue())); exareme2Parameters.put(parameter.getName(), convertStringToMultipleValues(parameter.getValue()));
} }
}); });
if (exaremeTransformers.size() > 0) { if (exaremeTransformers != null) {
exaremeTransformers.forEach(transformer -> { exaremeTransformers.forEach(transformer -> {
HashMap<String, Object> transformerParameterDTOs = new HashMap<>(); HashMap<String, Object> transformerParameterDTOs = new HashMap<>();
for (ExaremeAlgorithmRequestParamDTO parameter : transformer.getParameters()) { for (ExaremeAlgorithmRequestParamDTO parameter : transformer.getParameters()) {
......
...@@ -3,6 +3,7 @@ package eu.hbp.mip.models.DTOs; ...@@ -3,6 +3,7 @@ package eu.hbp.mip.models.DTOs;
import com.google.gson.annotations.SerializedName; import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -27,7 +28,7 @@ public class ExaremeAlgorithmDTO { ...@@ -27,7 +28,7 @@ public class ExaremeAlgorithmDTO {
private List<ExaremeAlgorithmRequestParamDTO> parameters; private List<ExaremeAlgorithmRequestParamDTO> parameters;
@SerializedName("preprocessing") @SerializedName("preprocessing")
private List<Transformer> preprocessing; private List<ExaremeTransformerDTO> preprocessing;
public ExaremeAlgorithmDTO() { public ExaremeAlgorithmDTO() {
...@@ -55,10 +56,10 @@ public class ExaremeAlgorithmDTO { ...@@ -55,10 +56,10 @@ public class ExaremeAlgorithmDTO {
}); });
} }
this.parameters = parameters; this.parameters = parameters;
List<Transformer> preprocessing = new ArrayList<>(); List<ExaremeTransformerDTO> preprocessing = new ArrayList<>();
if (exareme2Algorithm.getPreprocessing().isPresent()) { if (exareme2Algorithm.getPreprocessing().isPresent()) {
exareme2Algorithm.getPreprocessing().get().forEach(exareme2TransformerDTO -> { exareme2Algorithm.getPreprocessing().get().forEach(exareme2TransformerDTO -> {
Transformer transformer = new Transformer(exareme2TransformerDTO); ExaremeTransformerDTO transformer = new ExaremeTransformerDTO(exareme2TransformerDTO);
preprocessing.add(transformer); preprocessing.add(transformer);
}); });
this.preprocessing = preprocessing; this.preprocessing = preprocessing;
...@@ -67,8 +68,9 @@ public class ExaremeAlgorithmDTO { ...@@ -67,8 +68,9 @@ public class ExaremeAlgorithmDTO {
@Data @Data
@NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
public static class Transformer { public static class ExaremeTransformerDTO {
@SerializedName("name") @SerializedName("name")
private String name; private String name;
...@@ -81,8 +83,7 @@ public class ExaremeAlgorithmDTO { ...@@ -81,8 +83,7 @@ public class ExaremeAlgorithmDTO {
@SerializedName("parameters") @SerializedName("parameters")
private List<ExaremeAlgorithmRequestParamDTO> parameters; private List<ExaremeAlgorithmRequestParamDTO> parameters;
public ExaremeTransformerDTO(Exareme2AlgorithmDTO.Exareme2TransformerDTO transformerDTO) {
public Transformer(Exareme2AlgorithmDTO.Exareme2TransformerDTO transformerDTO) {
this.name = transformerDTO.getName().toUpperCase(); this.name = transformerDTO.getName().toUpperCase();
this.label = transformerDTO.getLabel(); this.label = transformerDTO.getLabel();
this.desc = transformerDTO.getDesc(); this.desc = transformerDTO.getDesc();
......
...@@ -356,20 +356,25 @@ public class ExperimentService { ...@@ -356,20 +356,25 @@ public class ExperimentService {
private void algorithmParametersLogging(ExperimentDTO experimentDTO, Logger logger) { private void algorithmParametersLogging(ExperimentDTO experimentDTO, Logger logger) {
String algorithmName = experimentDTO.getAlgorithm().getName(); String algorithmName = experimentDTO.getAlgorithm().getName();
StringBuilder parametersLogMessage = new StringBuilder(", Parameters:\n"); StringBuilder parametersLogMessage = new StringBuilder(", Parameters:\n");
experimentDTO.getAlgorithm().getParameters().forEach( if (experimentDTO.getAlgorithm().getParameters() != null){
params -> parametersLogMessage experimentDTO.getAlgorithm().getParameters().forEach(
.append(" ") params -> parametersLogMessage
.append(params.getLabel())
.append(" -> ")
.append(params.getValue())
.append("\n"));
experimentDTO.getAlgorithm().getPreprocessing().forEach( transformer ->
{
parametersLogMessage
.append(" ") .append(" ")
.append(transformer.getLabel()) .append(params.getLabel())
.append(" -> ") .append(" -> ")
.append("\n"); .append(params.getValue())
.append("\n"));
}
if (experimentDTO.getAlgorithm().getPreprocessing() != null) {
experimentDTO.getAlgorithm().getPreprocessing().forEach(transformer ->
{
parametersLogMessage
.append(" ")
.append(transformer.getLabel())
.append(" -> ")
.append("\n");
if (transformer.getParameters() != null) {
transformer.getParameters().forEach( transformer.getParameters().forEach(
transformerParams -> parametersLogMessage transformerParams -> parametersLogMessage
.append(" ") .append(" ")
...@@ -378,8 +383,9 @@ public class ExperimentService { ...@@ -378,8 +383,9 @@ public class ExperimentService {
.append(transformerParams.getValue()) .append(transformerParams.getValue())
.append("\n")); .append("\n"));
parametersLogMessage.append("\n"); parametersLogMessage.append("\n");
}); }
});
}
logger.LogUserAction("Executing " + algorithmName + parametersLogMessage); logger.LogUserAction("Executing " + algorithmName + parametersLogMessage);
} }
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment