From 62af54aae94c38282fffe93cd12059c4a17a40e2 Mon Sep 17 00:00:00 2001 From: Mirco Nasuti <mirco.nasuti@chuv.ch> Date: Fri, 15 Jan 2016 10:53:32 +0100 Subject: [PATCH] add minValue, maxValue and units attributes to Variable model + Removed null values from JSON serialization --- src/main/java/org/hbp/mip/data/Database.java | 6 +-- src/main/java/org/hbp/mip/model/Article.java | 2 + src/main/java/org/hbp/mip/model/Chart.java | 2 + .../org/hbp/mip/model/ChartConfigSet.java | 2 + src/main/java/org/hbp/mip/model/Dataset.java | 2 + src/main/java/org/hbp/mip/model/Filter.java | 2 + src/main/java/org/hbp/mip/model/Group.java | 2 + src/main/java/org/hbp/mip/model/Model.java | 2 + src/main/java/org/hbp/mip/model/Query.java | 2 + src/main/java/org/hbp/mip/model/Tag.java | 2 + src/main/java/org/hbp/mip/model/User.java | 2 + src/main/java/org/hbp/mip/model/Value.java | 2 + src/main/java/org/hbp/mip/model/Variable.java | 48 ++++++++++++++++++- 13 files changed, 71 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/hbp/mip/data/Database.java b/src/main/java/org/hbp/mip/data/Database.java index 897941873..7d2cbf100 100644 --- a/src/main/java/org/hbp/mip/data/Database.java +++ b/src/main/java/org/hbp/mip/data/Database.java @@ -32,7 +32,7 @@ public class Database { e.printStackTrace(); } - // Parse JSON + // Deserialize JSON Gson gson = new Gson(); Group rootGroup = gson.fromJson(data, Group.class); @@ -52,9 +52,9 @@ public class Database { e.printStackTrace(); } - // Parse JSON + // Deserialize JSON Gson gson = new Gson(); - Type listVariablesType = new TypeToken<LinkedList<Variable>>(){}.getType(); + Type listVariablesType = new TypeToken<List<Variable>>(){}.getType(); List<Variable> variables = gson.fromJson(data, listVariablesType); // Sync groups and values with DB diff --git a/src/main/java/org/hbp/mip/model/Article.java b/src/main/java/org/hbp/mip/model/Article.java index 155623970..20b2ff706 100644 --- a/src/main/java/org/hbp/mip/model/Article.java +++ b/src/main/java/org/hbp/mip/model/Article.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -19,6 +20,7 @@ import java.util.List; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Article { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Chart.java b/src/main/java/org/hbp/mip/model/Chart.java index 153ed8b54..3732c255e 100644 --- a/src/main/java/org/hbp/mip/model/Chart.java +++ b/src/main/java/org/hbp/mip/model/Chart.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -18,6 +19,7 @@ import java.util.List; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Chart { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/ChartConfigSet.java b/src/main/java/org/hbp/mip/model/ChartConfigSet.java index 9e54dbf64..f98836d49 100644 --- a/src/main/java/org/hbp/mip/model/ChartConfigSet.java +++ b/src/main/java/org/hbp/mip/model/ChartConfigSet.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -16,6 +17,7 @@ import javax.persistence.*; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class ChartConfigSet { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Dataset.java b/src/main/java/org/hbp/mip/model/Dataset.java index e023ba949..3a4591d19 100644 --- a/src/main/java/org/hbp/mip/model/Dataset.java +++ b/src/main/java/org/hbp/mip/model/Dataset.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -19,6 +20,7 @@ import java.util.List; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Dataset { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Filter.java b/src/main/java/org/hbp/mip/model/Filter.java index 7d2ccc430..2a0068cf7 100644 --- a/src/main/java/org/hbp/mip/model/Filter.java +++ b/src/main/java/org/hbp/mip/model/Filter.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -16,6 +17,7 @@ import javax.persistence.*; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Filter { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Group.java b/src/main/java/org/hbp/mip/model/Group.java index 4279b520d..25a783c48 100644 --- a/src/main/java/org/hbp/mip/model/Group.java +++ b/src/main/java/org/hbp/mip/model/Group.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -18,6 +19,7 @@ import java.util.List; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Group { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Model.java b/src/main/java/org/hbp/mip/model/Model.java index c3e96b7a4..bec3eb9df 100644 --- a/src/main/java/org/hbp/mip/model/Model.java +++ b/src/main/java/org/hbp/mip/model/Model.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -17,6 +18,7 @@ import java.util.Date; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Model { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Query.java b/src/main/java/org/hbp/mip/model/Query.java index ea4840dd9..bc29b8c57 100644 --- a/src/main/java/org/hbp/mip/model/Query.java +++ b/src/main/java/org/hbp/mip/model/Query.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -18,6 +19,7 @@ import java.util.List; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Query { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Tag.java b/src/main/java/org/hbp/mip/model/Tag.java index 5a76c3795..14adacc21 100644 --- a/src/main/java/org/hbp/mip/model/Tag.java +++ b/src/main/java/org/hbp/mip/model/Tag.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -16,6 +17,7 @@ import javax.persistence.*; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Tag { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/User.java b/src/main/java/org/hbp/mip/model/User.java index d18a87674..e2023cc27 100644 --- a/src/main/java/org/hbp/mip/model/User.java +++ b/src/main/java/org/hbp/mip/model/User.java @@ -5,6 +5,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -18,6 +19,7 @@ import java.util.regex.Pattern; @Table(name = "`user`") @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Value.java b/src/main/java/org/hbp/mip/model/Value.java index d619c72ce..cbca0c7d9 100644 --- a/src/main/java/org/hbp/mip/model/Value.java +++ b/src/main/java/org/hbp/mip/model/Value.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -16,6 +17,7 @@ import javax.persistence.*; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Value { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) diff --git a/src/main/java/org/hbp/mip/model/Variable.java b/src/main/java/org/hbp/mip/model/Variable.java index 044cca2f7..77c5e8d33 100644 --- a/src/main/java/org/hbp/mip/model/Variable.java +++ b/src/main/java/org/hbp/mip/model/Variable.java @@ -6,6 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -18,21 +19,25 @@ import java.util.List; @ApiModel(description = "") @javax.annotation.Generated(value = "class io.swagger.codegen.languages.SpringMVCServerCodegen", date = "2016-01-06T09:32:22.266Z") @JsonIgnoreProperties(value = { "id" }) +@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL) public class Variable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id = null; - @ManyToOne(fetch = FetchType.EAGER) - private Group group = null; @Column(unique = true) private String code = null; private String label = null; private String type = null; private Integer length = null; + private Double minValue = null; + private Double maxValue = null; + private String units = null; private Boolean isVariable = null; private Boolean isGrouping = null; private Boolean isCovariable = null; private Boolean isFilter = null; + @ManyToOne(fetch = FetchType.EAGER) + private Group group = null; @ManyToMany(fetch = FetchType.EAGER) private List<Value> values = new LinkedList<Value>(); @@ -181,6 +186,45 @@ public class Variable { this.values = values; } + /** + * Minimum value (only for numbers) + **/ + @ApiModelProperty(value = "Minimum value (only for numbers)") + @JsonProperty("minValue") + public Double getMinValue() { + return minValue; + } + + public void setMinValue(Double minValue) { + this.minValue = minValue; + } + + /** + * Maximum value (only for numbers) + **/ + @ApiModelProperty(value = "Maximum value (only for numbers)") + @JsonProperty("maxValue") + public Double getMaxValue() { + return maxValue; + } + + public void setMaxValue(Double maxValue) { + this.maxValue = maxValue; + } + + /** + * Units + **/ + @ApiModelProperty(value = "Units") + @JsonProperty("units") + public String getUnits() { + return units; + } + + public void setUnits(String units) { + this.units = units; + } + @Override public String toString() { StringBuilder sb = new StringBuilder(); -- GitLab