diff --git a/src/main/java/org/hbp/mip/controllers/ArticlesApi.java b/src/main/java/org/hbp/mip/controllers/ArticlesApi.java index 14bc9e07a1cc47bec5f14a0eb645704d66bdabcb..244853f7e6786b76821c88bf64b67e337a63dc90 100644 --- a/src/main/java/org/hbp/mip/controllers/ArticlesApi.java +++ b/src/main/java/org/hbp/mip/controllers/ArticlesApi.java @@ -61,7 +61,6 @@ public class ArticlesApi { Session session = HibernateUtil.getSessionFactory().getCurrentSession(); List articles = new LinkedList<>(); - try{ session.beginTransaction(); Query query = session.createQuery(queryString); if(status != null) @@ -81,13 +80,7 @@ public class ArticlesApi { } articles = query.list(); session.getTransaction().commit(); - } catch (Exception e) - { - if(session.getTransaction() != null) - { - session.getTransaction().rollback(); - } - } + return ResponseEntity.ok(articles); } diff --git a/src/main/java/org/hbp/mip/controllers/GroupsApi.java b/src/main/java/org/hbp/mip/controllers/GroupsApi.java index 2f6a86774ea1224190b970829a8bbc2aa6dd02fc..cbe99321bde4f6f13df99abadd099d77f17c9f4c 100644 --- a/src/main/java/org/hbp/mip/controllers/GroupsApi.java +++ b/src/main/java/org/hbp/mip/controllers/GroupsApi.java @@ -1,5 +1,8 @@ -package org.hbp.mip.controllers; +/** + * Created by mirco on 04.12.15. + */ +package org.hbp.mip.controllers; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/src/main/java/org/hbp/mip/controllers/ModelsApi.java b/src/main/java/org/hbp/mip/controllers/ModelsApi.java index 4de19c02b40eec4a8745cc5bad7c611b8fb39a2d..e9b482cb02138ea9094989082f0466b9785c25b4 100644 --- a/src/main/java/org/hbp/mip/controllers/ModelsApi.java +++ b/src/main/java/org/hbp/mip/controllers/ModelsApi.java @@ -4,7 +4,6 @@ package org.hbp.mip.controllers; - import io.swagger.annotations.*; import org.hbp.mip.MIPApplication; import org.hbp.mip.model.*; @@ -109,17 +108,11 @@ public class ModelsApi { model.setCreatedAt(new Date()); Session session = HibernateUtil.getSessionFactory().getCurrentSession(); - try{ + session.beginTransaction(); session.save(model); session.getTransaction().commit(); - } catch (Exception e) - { - if(session.getTransaction() != null) - { - session.getTransaction().rollback(); - } - } + return new ResponseEntity<Model>(HttpStatus.OK).ok(model); } @@ -133,23 +126,17 @@ public class ModelsApi { Session session = HibernateUtil.getSessionFactory().getCurrentSession(); Model model = null; - org.hibernate.Query query; - try { + Query query; + session.beginTransaction(); query = session.createQuery("FROM Model WHERE slug= :slug").setString("slug", slug); model = (Model) query.uniqueResult(); session.getTransaction().commit(); - } catch (Exception e) - { - if(session.getTransaction() != null) - { - session.getTransaction().rollback(); - } - } + if(model != null) { session = HibernateUtil.getSessionFactory().getCurrentSession(); - try{ + session.beginTransaction(); query = session.createQuery("FROM Query WHERE id= :id").setLong("id", model.getQuery().getId()); org.hbp.mip.model.Query q = (org.hbp.mip.model.Query) query.uniqueResult(); @@ -197,13 +184,7 @@ public class ModelsApi { Dataset ds = CSVUtil.parseValues(DATA_FILE, model.getQuery()); model.setDataset(ds); - } catch (Exception e) - { - if(session.getTransaction() != null) - { - session.getTransaction().rollback(); - } - } + } return new ResponseEntity<>(HttpStatus.OK).ok(model); diff --git a/src/main/java/org/hbp/mip/controllers/RequestsApi.java b/src/main/java/org/hbp/mip/controllers/RequestsApi.java index c1d767f04a5f5b6abc5d4768c1d597d76547f468..b60a53b558a33a205bb07ff404a25bba7e5af2d1 100644 --- a/src/main/java/org/hbp/mip/controllers/RequestsApi.java +++ b/src/main/java/org/hbp/mip/controllers/RequestsApi.java @@ -1,3 +1,7 @@ +/** + * Created by mirco on 18.01.16. + */ + package org.hbp.mip.controllers; import io.swagger.annotations.*; @@ -12,9 +16,6 @@ import org.springframework.web.bind.annotation.RestController; import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; -/** - * Created by mirco on 18.01.16. - */ @RestController @RequestMapping(value = "/queries/requests", produces = {APPLICATION_JSON_VALUE}) @Api(value = "/queries/requests", description = "the requests API") diff --git a/src/main/java/org/hbp/mip/controllers/StatsApi.java b/src/main/java/org/hbp/mip/controllers/StatsApi.java index ce22204d20725514582ba3e1a80393243389c720..64a52685fd97b4e20f7009cd4a5dbb1a32b9d585 100644 --- a/src/main/java/org/hbp/mip/controllers/StatsApi.java +++ b/src/main/java/org/hbp/mip/controllers/StatsApi.java @@ -1,3 +1,7 @@ +/** + * Created by mirco on 18.01.16. + */ + package org.hbp.mip.controllers; import io.swagger.annotations.Api; diff --git a/src/main/java/org/hbp/mip/controllers/UsersApi.java b/src/main/java/org/hbp/mip/controllers/UsersApi.java index 93d7859644849db4931ab9530c61fda73dd913ff..465b833a02957780037a72797c4c8ed25259d64f 100644 --- a/src/main/java/org/hbp/mip/controllers/UsersApi.java +++ b/src/main/java/org/hbp/mip/controllers/UsersApi.java @@ -1,3 +1,7 @@ +/** + * Created by mirco on 14.01.16. + */ + package org.hbp.mip.controllers; import io.swagger.annotations.*; @@ -12,10 +16,6 @@ import org.springframework.web.bind.annotation.RestController; import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; -/** - * Created by mirco on 14.01.16. - */ - @RestController @RequestMapping(value = "/users", produces = {APPLICATION_JSON_VALUE}) @Api(value = "/users", description = "the users API") diff --git a/src/main/java/org/hbp/mip/controllers/WorkflowApi.java b/src/main/java/org/hbp/mip/controllers/WorkflowApi.java index b6cfba3e2f824ea4ac74e29891b42aadbe26d658..1c4fba039d73a8619d62853292b89b9883431cf7 100644 --- a/src/main/java/org/hbp/mip/controllers/WorkflowApi.java +++ b/src/main/java/org/hbp/mip/controllers/WorkflowApi.java @@ -1,3 +1,7 @@ +/** + * Created by mirco on 02.03.16. + */ + package org.hbp.mip.controllers; import io.swagger.annotations.*; @@ -13,9 +17,6 @@ import java.io.DataOutputStream; import java.io.InputStreamReader; import java.net.URL; -/** - * Created by mirco on 02.03.16. - */ @RestController @RequestMapping(value = "/workflow/{algo}") @Api(value = "/workflow/{algo}", description = "Forward workflow API") diff --git a/src/main/java/org/hbp/mip/model/Article.java b/src/main/java/org/hbp/mip/model/Article.java index 6ff3c38eca75ea61840e719a321990477ea9a7f1..a22a2bbf11255a3d7eb2b8ff893c874e5cafbcd3 100644 --- a/src/main/java/org/hbp/mip/model/Article.java +++ b/src/main/java/org/hbp/mip/model/Article.java @@ -7,7 +7,6 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.Date; @@ -16,34 +15,42 @@ import java.util.List; @Entity @Table(name = "`article`") -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class Article { + @Id private String slug = null; + private String title = null; + private String status = null; + private String _abstract = null; + @Column(columnDefinition = "text") private String content = null; + private Date publishedAt = null; + private Date createdAt = null; + private Date updatedAt = null; + @ManyToOne private User createdBy = null; + @ManyToOne private User updatedBy = null; + @ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.PERSIST) - private List<Tag> tags = new LinkedList<Tag>(); + private List<Tag> tags = new LinkedList<>(); + public Article() { } - /** - * Status - **/ - @ApiModelProperty(value = "Status") - @JsonProperty("status") + public String getStatus() { return status; } @@ -52,11 +59,7 @@ public class Article { this.status = status; } - /** - * Title - **/ - @ApiModelProperty(value = "Title") - @JsonProperty("title") + public String getTitle() { return title; } @@ -65,11 +68,7 @@ public class Article { this.title = title; } - /** - * Short string identifier - **/ - @ApiModelProperty(value = "Short string identifier") - @JsonProperty("slug") + public String getSlug() { return slug; } @@ -78,10 +77,7 @@ public class Article { this.slug = slug; } - /** - * Short introduction - **/ - @ApiModelProperty(value = "Short introduction") + @JsonProperty("abstract") public String getAbstract() { return _abstract; @@ -91,11 +87,7 @@ public class Article { this._abstract = _abstract; } - /** - * Content - **/ - @ApiModelProperty(value = "Content") - @JsonProperty("content") + public String getContent() { return content; } @@ -104,11 +96,7 @@ public class Article { this.content = content; } - /** - * Publication date - **/ - @ApiModelProperty(value = "Publication date") - @JsonProperty("publishedAt") + public Date getPublishedAt() { return publishedAt; } @@ -117,11 +105,7 @@ public class Article { this.publishedAt = publishedAt; } - /** - * Creation date - **/ - @ApiModelProperty(value = "Creation date") - @JsonProperty("createdAt") + public Date getCreatedAt() { return createdAt; } @@ -130,11 +114,7 @@ public class Article { this.createdAt = createdAt; } - /** - * Update date - **/ - @ApiModelProperty(value = "Update date") - @JsonProperty("updatedAt") + public Date getUpdatedAt() { return updatedAt; } @@ -143,11 +123,7 @@ public class Article { this.updatedAt = updatedAt; } - /** - * Author - **/ - @ApiModelProperty(value = "Author") - @JsonProperty("createdBy") + public User getCreatedBy() { return createdBy; } @@ -156,11 +132,7 @@ public class Article { this.createdBy = createdBy; } - /** - * Updater - **/ - @ApiModelProperty(value = "Updater") - @JsonProperty("updatedBy") + public User getUpdatedBy() { return updatedBy; } @@ -169,10 +141,7 @@ public class Article { this.updatedBy = updatedBy; } - /** - **/ - @ApiModelProperty(value = "") - @JsonProperty("tags") + public List<Tag> getTags() { return tags; } @@ -181,27 +150,4 @@ public class Article { this.tags = tags; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Article {\n"); - - sb.append(" status: ").append(status).append("\n"); - sb.append(" title: ").append(title).append("\n"); - sb.append(" slug: ").append(slug).append("\n"); - sb.append(" _abstract: ").append(_abstract).append("\n"); - sb.append(" content: ").append(content).append("\n"); - sb.append(" publishedAt: ").append(publishedAt).append("\n"); - sb.append(" createdAt: ").append(createdAt).append("\n"); - sb.append(" updatedAt: ").append(updatedAt).append("\n"); - sb.append(" createdBy: ").append(createdBy).append("\n"); - sb.append(" updatedBy: ").append(updatedBy).append("\n"); - sb.append(" tags: ").append(tags).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - - public void addTag(Tag tag) { - this.tags.add(tag); - } } diff --git a/src/main/java/org/hbp/mip/model/Config.java b/src/main/java/org/hbp/mip/model/Config.java index 2e6b081c20c39d287933410211f0567368815cfe..e9572c666769287f1d42d853097f99a25fbc5da3 100644 --- a/src/main/java/org/hbp/mip/model/Config.java +++ b/src/main/java/org/hbp/mip/model/Config.java @@ -1,3 +1,7 @@ +/** + * Created by mirco on 25.02.16. + */ + package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; @@ -9,26 +13,37 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; -/** - * Created by mirco on 25.02.16. - */ @Entity @Table(name = "`config`") -@ApiModel(description = "") +@ApiModel @JsonIgnoreProperties(value = { "id" }) public class Config { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id = null; + private String type = null; + private Integer height = null; + @ElementCollection(fetch = FetchType.EAGER) + @CollectionTable(name = "config_yAxisVariables", joinColumns = @JoinColumn(name = "config_id")) private List<String> yAxisVariables = new LinkedList<>(); + private String xAxisVariable = null; + private Boolean hasXAxis = null; + @ElementCollection(fetch = FetchType.EAGER) + @CollectionTable(name = "config_title", joinColumns = @JoinColumn(name = "config_id")) private Map<String, String> title = new HashMap<>(); + + public Config() { + } + + public Long getId() { return id; } @@ -37,6 +52,7 @@ public class Config { this.id = id; } + public String getType() { return type; } @@ -45,6 +61,7 @@ public class Config { this.type = type; } + public Integer getHeight() { return height; } @@ -53,6 +70,7 @@ public class Config { this.height = height; } + public List<String> getyAxisVariables() { return yAxisVariables; } @@ -61,6 +79,7 @@ public class Config { this.yAxisVariables = yAxisVariables; } + public String getxAxisVariable() { return xAxisVariable; } @@ -69,6 +88,7 @@ public class Config { this.xAxisVariable = xAxisVariable; } + public Boolean getHasXAxis() { return hasXAxis; } @@ -77,6 +97,7 @@ public class Config { this.hasXAxis = hasXAxis; } + public Map<String, String> getTitle() { return title; } @@ -84,4 +105,5 @@ public class Config { public void setTitle(Map<String, String> title) { this.title = title; } + } diff --git a/src/main/java/org/hbp/mip/model/Dataset.java b/src/main/java/org/hbp/mip/model/Dataset.java index d56a618c7499883aff36c37797dc6d8640b19583..2fb7f6f8ca368b41866105f3a69073db7ed693d3 100644 --- a/src/main/java/org/hbp/mip/model/Dataset.java +++ b/src/main/java/org/hbp/mip/model/Dataset.java @@ -5,34 +5,35 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.*; @Entity @Table(name = "`dataset`") -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class Dataset { + @Id private String code = null; + private Date date = null; + @ElementCollection(fetch = FetchType.EAGER) + @CollectionTable(name = "dataset_header", joinColumns = @JoinColumn(name = "dataset_code")) private List<String> header = new LinkedList<>(); + @ElementCollection(fetch=FetchType.EAGER) + @CollectionTable(name = "dataset_data", joinColumns = @JoinColumn(name = "dataset_code")) private Map<String, LinkedList<Object>> data = new HashMap<>(); + public Dataset() { } - /** - * Code - **/ - @ApiModelProperty(value = "Code") - @JsonProperty("code") + public String getCode() { return code; } @@ -41,11 +42,7 @@ public class Dataset { this.code = code; } - /** - * Date - **/ - @ApiModelProperty(value = "Date") - @JsonProperty("date") + public Date getDate() { return date; } @@ -54,11 +51,7 @@ public class Dataset { this.date = date; } - /** - * Header - **/ - @ApiModelProperty(value = "Header") - @JsonProperty("header") + public List<String> getHeader() { return header; } @@ -67,6 +60,7 @@ public class Dataset { this.header = header; } + public Map<String, LinkedList<Object>> getData() { return data; } @@ -75,16 +69,4 @@ public class Dataset { this.data = data; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Dataset {\n"); - - sb.append(" code: ").append(code).append("\n"); - sb.append(" date: ").append(date).append("\n"); - sb.append(" header: ").append(header).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - } diff --git a/src/main/java/org/hbp/mip/model/Filter.java b/src/main/java/org/hbp/mip/model/Filter.java index b973ed5af313fa354783f0fad9b8ea85cf150b1e..bf0c29b1e03dc4c5fceb14699f8ca091fa94488b 100644 --- a/src/main/java/org/hbp/mip/model/Filter.java +++ b/src/main/java/org/hbp/mip/model/Filter.java @@ -6,9 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.LinkedList; @@ -16,27 +14,29 @@ import java.util.List; @Entity @Table(name = "`filter`") -@ApiModel(description = "") +@ApiModel @JsonIgnoreProperties(value = { "id" }) @JsonInclude(JsonInclude.Include.NON_NULL) public class Filter { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id = null; + @ManyToOne private Variable variable = null; + private String operator = null; + @ElementCollection(fetch = FetchType.EAGER) + @CollectionTable(name = "filter_values", joinColumns = @JoinColumn(name = "filter_id")) private List<String> values = new LinkedList<>(); + public Filter() { } - /** - * Unique identifier - **/ - @ApiModelProperty(value = "Unique identifier") - @JsonProperty("id") + public Long getId() { return id; } @@ -45,11 +45,7 @@ public class Filter { this.id = id; } - /** - * Variable - **/ - @ApiModelProperty(value = "Variable") - @JsonProperty("variable") + public Variable getVariable() { return variable; } @@ -58,11 +54,7 @@ public class Filter { this.variable = variable; } - /** - * Operator - **/ - @ApiModelProperty(value = "Operator") - @JsonProperty("operator") + public String getOperator() { return operator; } @@ -71,6 +63,7 @@ public class Filter { this.operator = operator; } + public List<String> getValues() { return values; } @@ -79,15 +72,4 @@ public class Filter { this.values = values; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Filter {\n"); - - sb.append(" id: ").append(id).append("\n"); - sb.append(" variable: ").append(variable).append("\n"); - sb.append(" operator: ").append(operator).append("\n"); - sb.append("}\n"); - return sb.toString(); - } } diff --git a/src/main/java/org/hbp/mip/model/GeneralStats.java b/src/main/java/org/hbp/mip/model/GeneralStats.java index 679b1d91ec310fe718319b46e3427ddcaf8d0399..94b3b62b28b5dea3b2d727c66042272401827858 100644 --- a/src/main/java/org/hbp/mip/model/GeneralStats.java +++ b/src/main/java/org/hbp/mip/model/GeneralStats.java @@ -1,12 +1,13 @@ +/** + * Created by mirco on 03.02.16. + */ + package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; import io.swagger.annotations.ApiModel; -/** - * Created by mirco on 03.02.16. - */ -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class GeneralStats { @@ -14,9 +15,11 @@ public class GeneralStats { private Long articles = null; private Long variables = null; + public GeneralStats() { } + public Long getUsers() { return users; } @@ -25,6 +28,7 @@ public class GeneralStats { this.users = users; } + public Long getArticles() { return articles; } @@ -33,6 +37,7 @@ public class GeneralStats { this.articles = articles; } + public Long getVariables() { return variables; } diff --git a/src/main/java/org/hbp/mip/model/Group.java b/src/main/java/org/hbp/mip/model/Group.java index 972b2432952588175df8dd33bee44914482e99b1..066f3f94905128fdb961b1d473b0d878948814ad 100644 --- a/src/main/java/org/hbp/mip/model/Group.java +++ b/src/main/java/org/hbp/mip/model/Group.java @@ -6,9 +6,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.LinkedList; @@ -16,26 +14,27 @@ import java.util.List; @Entity @Table(name = "`group`") -@ApiModel(description = "") +@ApiModel @JsonIgnoreProperties(value = { "parent" }) @JsonInclude(JsonInclude.Include.NON_NULL) public class Group { + @Id private String code = null; + private String label = null; + @ManyToOne(fetch = FetchType.EAGER) private Group parent = null; + @OneToMany(fetch = FetchType.EAGER) - private List<Group> groups = new LinkedList<Group>(); + private List<Group> groups = new LinkedList<>(); + public Group() { } - /** - * Code - **/ - @ApiModelProperty(value = "Code") - @JsonProperty("code") + public String getCode() { return code; } @@ -44,11 +43,7 @@ public class Group { this.code = code; } - /** - * Label - **/ - @ApiModelProperty(value = "Label") - @JsonProperty("label") + public String getLabel() { return label; } @@ -57,21 +52,16 @@ public class Group { this.label = label; } + public Group getParent() { return parent; } - @ApiModelProperty(value = "Parent") - @JsonProperty("parent") public void setParent(Group parent) { this.parent = parent; } - /** - * Groups - **/ - @ApiModelProperty(value = "Groups") - @JsonProperty("groups") + public List<Group> getGroups() { return groups; } @@ -80,22 +70,6 @@ public class Group { this.groups = groups; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Group {\n"); - - sb.append(" code: ").append(code).append("\n"); - sb.append(" label: ").append(label).append("\n"); - sb.append(" parent: ").append(parent).append("\n"); - sb.append(" groups: ").append(groups).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - - public void addGroup(Group group) { - this.groups.add(group); - } public Group clone() { diff --git a/src/main/java/org/hbp/mip/model/Model.java b/src/main/java/org/hbp/mip/model/Model.java index 53c0e6e9a476a8f886c288d70d285c7d4b5b675c..2a3b64dfb57f32436fd1ff6673415957149844cc 100644 --- a/src/main/java/org/hbp/mip/model/Model.java +++ b/src/main/java/org/hbp/mip/model/Model.java @@ -5,50 +5,60 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import org.hibernate.annotations.Cascade; import org.hibernate.annotations.CascadeType; -import javax.persistence.*; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.ManyToOne; +import javax.persistence.Table; import java.util.Date; @Entity @Table(name = "`model`") -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class Model { + @Id private String slug = null; + private String title = null; + private String description = null; + private Boolean valid = null; + private Date createdAt = null; + private Date updatedAt = null; + @ManyToOne @Cascade(CascadeType.SAVE_UPDATE) private Query query = null; + @ManyToOne @Cascade(CascadeType.SAVE_UPDATE) private Dataset dataset = null; + @ManyToOne @Cascade(CascadeType.SAVE_UPDATE) private Config config = null; + @ManyToOne private User createdBy = null; + @ManyToOne private User updatedBy = null; + private String textQuery = null; + public Model() { } - /** - * Title - **/ - @ApiModelProperty(value = "Title") - @JsonProperty("title") + public String getTitle() { return title; } @@ -57,11 +67,7 @@ public class Model { this.title = title; } - /** - * slug - **/ - @ApiModelProperty(value = "slug") - @JsonProperty("slug") + public String getSlug() { return slug; } @@ -70,11 +76,7 @@ public class Model { this.slug = slug; } - /** - * Description - **/ - @ApiModelProperty(value = "Description") - @JsonProperty("description") + public String getDescription() { return description; } @@ -83,11 +85,7 @@ public class Model { this.description = description; } - /** - * Query - **/ - @ApiModelProperty(value = "Query") - @JsonProperty("query") + public Query getQuery() { return query; } @@ -96,11 +94,7 @@ public class Model { this.query = query; } - /** - * Dataset - **/ - @ApiModelProperty(value = "Dataset") - @JsonProperty("dataset") + public Dataset getDataset() { return dataset; } @@ -109,11 +103,7 @@ public class Model { this.dataset = dataset; } - /** - * Is it valid ? - **/ - @ApiModelProperty(value = "Is it valid ?") - @JsonProperty("valid") + public Boolean getValid() { return valid; } @@ -122,8 +112,7 @@ public class Model { this.valid = valid; } - @ApiModelProperty(value = "Config") - @JsonProperty("config") + public Config getConfig() { return config; } @@ -132,11 +121,7 @@ public class Model { this.config = config; } - /** - * Creation date - **/ - @ApiModelProperty(value = "Creation date") - @JsonProperty("createdAt") + public Date getCreatedAt() { return createdAt; } @@ -145,11 +130,7 @@ public class Model { this.createdAt = createdAt; } - /** - * Update date - **/ - @ApiModelProperty(value = "Update date") - @JsonProperty("updatedAt") + public Date getUpdatedAt() { return updatedAt; } @@ -158,11 +139,7 @@ public class Model { this.updatedAt = updatedAt; } - /** - * Author - **/ - @ApiModelProperty(value = "Author") - @JsonProperty("createdBy") + public User getCreatedBy() { return createdBy; } @@ -171,11 +148,7 @@ public class Model { this.createdBy = createdBy; } - /** - * Updater - **/ - @ApiModelProperty(value = "Updater") - @JsonProperty("updatedBy") + public User getUpdatedBy() { return updatedBy; } @@ -184,11 +157,7 @@ public class Model { this.updatedBy = updatedBy; } - /** - * Text query - **/ - @ApiModelProperty(value = "Text query") - @JsonProperty("textQuery") + public String getTextQuery() { return textQuery; } @@ -197,23 +166,4 @@ public class Model { this.textQuery = textQuery; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Model {\n"); - - sb.append(" title: ").append(title).append("\n"); - sb.append(" slug: ").append(slug).append("\n"); - sb.append(" description: ").append(description).append("\n"); - sb.append(" query: ").append(query).append("\n"); - sb.append(" valid: ").append(valid).append("\n"); - sb.append(" createdAt: ").append(createdAt).append("\n"); - sb.append(" updatedAt: ").append(updatedAt).append("\n"); - sb.append(" createdBy: ").append(createdBy).append("\n"); - sb.append(" updatedBy: ").append(updatedBy).append("\n"); - sb.append(" textQuery: ").append(textQuery).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - } diff --git a/src/main/java/org/hbp/mip/model/Query.java b/src/main/java/org/hbp/mip/model/Query.java index 7543d62c6e63c479fd2d8c7e3f99939cd6205b6a..1f57e36168071c0960edb7c1a52567aa628097aa 100644 --- a/src/main/java/org/hbp/mip/model/Query.java +++ b/src/main/java/org/hbp/mip/model/Query.java @@ -8,51 +8,53 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.LinkedList; import java.util.List; @Entity +@ApiModel @Table(name = "`query`") -@ApiModel(description = "") @JsonIgnoreProperties(value = { "id" }) @JsonInclude(JsonInclude.Include.NON_NULL) public class Query { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id = null; + private String request = null; + @ManyToMany(fetch = FetchType.EAGER) @JoinTable(name = "query_variable", joinColumns = { @JoinColumn(name = "id", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "code", nullable = false, updatable = false) }) private List<Variable> variables = new LinkedList<>(); + @ManyToMany(fetch = FetchType.EAGER) @JoinTable(name = "query_covariable", joinColumns = { @JoinColumn(name = "id", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "code", nullable = false, updatable = false) }) private List<Variable> covariables = new LinkedList<>(); + @ManyToMany(fetch = FetchType.EAGER) @JoinTable(name = "query_grouping", joinColumns = { @JoinColumn(name = "id", nullable = false, updatable = false) }, inverseJoinColumns = { @JoinColumn(name = "code", nullable = false, updatable = false) }) private List<Variable> grouping = new LinkedList<>(); - @ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL) + + @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL) private List<Filter> filters = new LinkedList<>(); + public Query() { } - /** - * Unique identifier - **/ - @ApiModelProperty(value = "Unique identifier") - @JsonProperty("id") + public Long getId() { return id; } @@ -61,11 +63,7 @@ public class Query { this.id = id; } - /** - * Variables - **/ - @ApiModelProperty(value = "Variables") - @JsonProperty("variables") + public List<Variable> getVariables() { return variables; } @@ -74,10 +72,7 @@ public class Query { this.variables = variables; } - /** - * Covariables - **/ - @ApiModelProperty(value = "Covariables") + @JsonProperty("coVariables") public List<Variable> getCovariables() { return covariables; @@ -87,10 +82,7 @@ public class Query { this.covariables = covariables; } - /** - * Grouping - **/ - @ApiModelProperty(value = "Grouping") + @JsonProperty("groupings") public List<Variable> getGrouping() { return grouping; @@ -100,11 +92,7 @@ public class Query { this.grouping = grouping; } - /** - * Filters - **/ - @ApiModelProperty(value = "Filters") - @JsonProperty("filters") + public List<Filter> getFilters() { return filters; } @@ -113,11 +101,7 @@ public class Query { this.filters = filters; } - /** - * Request - **/ - @ApiModelProperty(value = "Request") - @JsonProperty("request") + public String getRequest() { return request; } @@ -126,34 +110,4 @@ public class Query { this.request = request; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Query {\n"); - - sb.append(" id: ").append(id).append("\n"); - sb.append(" variables: ").append(variables).append("\n"); - sb.append(" covariables: ").append(covariables).append("\n"); - sb.append(" grouping: ").append(grouping).append("\n"); - sb.append(" filters: ").append(filters).append("\n"); - sb.append(" request: ").append(request).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - - public void addVariable(Variable variable) { - this.variables.add(variable); - } - - public void addCovariable(Variable covariable) { - this.covariables.add(covariable); - } - - public void addGroupingVariable(Variable groupingVariable) { - this.grouping.add(groupingVariable); - } - - public void addFilter(Filter filter) { - this.filters.add(filter); - } } diff --git a/src/main/java/org/hbp/mip/model/Tag.java b/src/main/java/org/hbp/mip/model/Tag.java index e61cbf017d5964dd2a04002bd7b5b918fa353bc4..e4c34e30bb9ca12ee306455e755018033ab928f7 100644 --- a/src/main/java/org/hbp/mip/model/Tag.java +++ b/src/main/java/org/hbp/mip/model/Tag.java @@ -5,9 +5,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.Entity; import javax.persistence.Id; @@ -15,20 +13,18 @@ import javax.persistence.Table; @Entity @Table(name = "`tag`") -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class Tag { + @Id private String name = null; + public Tag() { } - /** - * Name - **/ - @ApiModelProperty(value = "Name") - @JsonProperty("name") + public String getName() { return name; } @@ -37,14 +33,4 @@ public class Tag { this.name = name; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Tag {\n"); - - //sb.append(" id: ").append(id).append("\n"); - sb.append(" name: ").append(name).append("\n"); - sb.append("}\n"); - return sb.toString(); - } } diff --git a/src/main/java/org/hbp/mip/model/User.java b/src/main/java/org/hbp/mip/model/User.java index d31237ba71f26ff07ffb17a982f3c42b1452233e..c361951013039556811b5a0a1cab032434679c09 100644 --- a/src/main/java/org/hbp/mip/model/User.java +++ b/src/main/java/org/hbp/mip/model/User.java @@ -5,9 +5,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.LinkedList; @@ -17,35 +15,62 @@ import java.util.regex.Pattern; @Entity @Table(name = "`user`") -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class User { + @Id private String username = null; + private String fullname = null; + private String firstname = null; + private String lastname = null; + private String picture = null; + private String web = null; + private String phone = null; + private String birthday = null; + private String gender = null; + private String city = null; + private String country = null; + private String password = null; + private String email = null; + private String apikey = null; + private String team = null; + private Boolean isActive = null; + @ElementCollection(fetch = FetchType.EAGER) - private List<String> languages = new LinkedList<String>(); + @CollectionTable(name = "user_languages", joinColumns = @JoinColumn(name = "user_username")) + private List<String> languages = new LinkedList<>(); + @ElementCollection(fetch = FetchType.EAGER) - private List<String> roles = new LinkedList<String>(); + @CollectionTable(name = "user_roles", joinColumns = @JoinColumn(name = "user_username")) + private List<String> roles = new LinkedList<>(); + private Boolean agreeNDA = null; + public User() { } + + /** + * Create a user using OpenID user profile + * @param userInfo info from OpenID UserInfo endpoint + */ public User(String userInfo) { Pattern p; @@ -109,11 +134,7 @@ public class User { } - /** - * Fullname - **/ - @ApiModelProperty(value = "Fullname") - @JsonProperty("fullname") + public String getFullname() { return fullname; } @@ -122,11 +143,7 @@ public class User { this.fullname = fullname; } - /** - * Username - **/ - @ApiModelProperty(value = "Username") - @JsonProperty("username") + public String getUsername() { return username; } @@ -135,11 +152,7 @@ public class User { this.username = username; } - /** - * Firstname - **/ - @ApiModelProperty(value = "Firstname") - @JsonProperty("firstname") + public String getFirstname() { return firstname; } @@ -148,11 +161,7 @@ public class User { this.firstname = firstname; } - /** - * Lastname - **/ - @ApiModelProperty(value = "Lastname") - @JsonProperty("lastname") + public String getLastname() { return lastname; } @@ -161,11 +170,7 @@ public class User { this.lastname = lastname; } - /** - * Path to a profile picture - **/ - @ApiModelProperty(value = "Path to a profile picture") - @JsonProperty("picture") + public String getPicture() { return picture; } @@ -174,11 +179,7 @@ public class User { this.picture = picture; } - /** - * Personnal web site URL - **/ - @ApiModelProperty(value = "Personnal web site URL") - @JsonProperty("web") + public String getWeb() { return web; } @@ -187,11 +188,7 @@ public class User { this.web = web; } - /** - * Phone number - **/ - @ApiModelProperty(value = "Phone number") - @JsonProperty("phone") + public String getPhone() { return phone; } @@ -200,11 +197,7 @@ public class User { this.phone = phone; } - /** - * Birthday date - **/ - @ApiModelProperty(value = "Birthday date") - @JsonProperty("birthday") + public String getBirthday() { return birthday; } @@ -213,11 +206,7 @@ public class User { this.birthday = birthday; } - /** - * Gender - **/ - @ApiModelProperty(value = "Gender") - @JsonProperty("gender") + public String getGender() { return gender; } @@ -226,11 +215,7 @@ public class User { this.gender = gender; } - /** - * City - **/ - @ApiModelProperty(value = "City") - @JsonProperty("city") + public String getCity() { return city; } @@ -239,11 +224,7 @@ public class User { this.city = city; } - /** - * Country - **/ - @ApiModelProperty(value = "Country") - @JsonProperty("country") + public String getCountry() { return country; } @@ -252,11 +233,7 @@ public class User { this.country = country; } - /** - * password - **/ - @ApiModelProperty(value = "password") - @JsonProperty("password") + public String getPassword() { return password; } @@ -265,11 +242,7 @@ public class User { this.password = password; } - /** - * E-mail address - **/ - @ApiModelProperty(value = "E-mail address") - @JsonProperty("email") + public String getEmail() { return email; } @@ -278,11 +251,7 @@ public class User { this.email = email; } - /** - * API key - **/ - @ApiModelProperty(value = "API key") - @JsonProperty("apikey") + public String getApikey() { return apikey; } @@ -291,11 +260,7 @@ public class User { this.apikey = apikey; } - /** - * Team - **/ - @ApiModelProperty(value = "Team") - @JsonProperty("team") + public String getTeam() { return team; } @@ -304,11 +269,7 @@ public class User { this.team = team; } - /** - * Is it active ? - **/ - @ApiModelProperty(value = "Is it active ?") - @JsonProperty("isActive") + public Boolean getIsActive() { return isActive; } @@ -317,11 +278,7 @@ public class User { this.isActive = isActive; } - /** - * Languages - **/ - @ApiModelProperty(value = "Languages") - @JsonProperty("languages") + public List<String> getLanguages() { return languages; } @@ -330,11 +287,7 @@ public class User { this.languages = languages; } - /** - * Roles - **/ - @ApiModelProperty(value = "Roles") - @JsonProperty("roles") + public List<String> getRoles() { return roles; } @@ -343,11 +296,7 @@ public class User { this.roles = roles; } - /** - * Agree NDA - **/ - @ApiModelProperty(value = "Agree NDA") - @JsonProperty("agreeNDA") + public Boolean getAgreeNDA() { return agreeNDA; } @@ -356,40 +305,4 @@ public class User { this.agreeNDA = agreeNDA; } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class User {\n"); - - sb.append(" fullname: ").append(fullname).append("\n"); - sb.append(" username: ").append(username).append("\n"); - sb.append(" firstname: ").append(firstname).append("\n"); - sb.append(" lastname: ").append(lastname).append("\n"); - sb.append(" picture: ").append(picture).append("\n"); - sb.append(" web: ").append(web).append("\n"); - sb.append(" phone: ").append(phone).append("\n"); - sb.append(" birthday: ").append(birthday).append("\n"); - sb.append(" gender: ").append(gender).append("\n"); - sb.append(" city: ").append(city).append("\n"); - sb.append(" country: ").append(country).append("\n"); - sb.append(" password: ").append(password).append("\n"); - sb.append(" email: ").append(email).append("\n"); - sb.append(" apikey: ").append(apikey).append("\n"); - sb.append(" team: ").append(team).append("\n"); - sb.append(" isActive: ").append(isActive).append("\n"); - sb.append(" languages: ").append(languages).append("\n"); - sb.append(" roles: ").append(roles).append("\n"); - sb.append(" agreeNDA: ").append(agreeNDA).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - - public void addLanguage(String language) { - this.languages.add(language); - } - - public void addRole(String role) { - this.roles.add(role); - } } diff --git a/src/main/java/org/hbp/mip/model/Value.java b/src/main/java/org/hbp/mip/model/Value.java index 150101367a6dcdfb3e9f72ad5a13f2b93c7cc28e..b9c2705c59e3ecd524a4d4b289a478aadf02601e 100644 --- a/src/main/java/org/hbp/mip/model/Value.java +++ b/src/main/java/org/hbp/mip/model/Value.java @@ -5,9 +5,7 @@ package org.hbp.mip.model; import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.Entity; import javax.persistence.Id; @@ -15,20 +13,16 @@ import javax.persistence.Table; @Entity @Table(name = "`value`") -@ApiModel(description = "") +@ApiModel @JsonInclude(JsonInclude.Include.NON_NULL) public class Value { @Id private String code = null; + private String label = null; - /** - * Code - **/ - @ApiModelProperty(value = "Code") - @JsonProperty("code") public String getCode() { return code; } @@ -38,11 +32,6 @@ public class Value { } - /** - * Label - **/ - @ApiModelProperty(value = "Label") - @JsonProperty("label") public String getLabel() { return label; } @@ -51,15 +40,4 @@ public class Value { this.label = label; } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Value {\n"); - - sb.append(" code: ").append(code).append("\n"); - sb.append(" label: ").append(label).append("\n"); - sb.append("}\n"); - return sb.toString(); - } } diff --git a/src/main/java/org/hbp/mip/model/Variable.java b/src/main/java/org/hbp/mip/model/Variable.java index 4134988d2ab678908ddc38d97c3b8aa6ad96e81a..7bf380b36cec7aec3a5e14a4fc3ef6a9e977e7a2 100644 --- a/src/main/java/org/hbp/mip/model/Variable.java +++ b/src/main/java/org/hbp/mip/model/Variable.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import javax.persistence.*; import java.util.LinkedList; @@ -16,38 +15,48 @@ import java.util.List; @Entity @Table(name = "`variable`") -@ApiModel(description = "") +@ApiModel @JsonIgnoreProperties(value = { "queries" }) @JsonInclude(JsonInclude.Include.NON_NULL) public class Variable { @Id 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<>(); + @ManyToMany(fetch = FetchType.EAGER, mappedBy = "variables") private List<Query> queries = new LinkedList<>(); + public Variable() { } - /** - * Group - **/ - @ApiModelProperty(value = "Group") - @JsonProperty("group") + public Group getGroup() { return group; } @@ -56,11 +65,7 @@ public class Variable { this.group = group; } - /** - * Code - **/ - @ApiModelProperty(value = "Code") - @JsonProperty("code") + public String getCode() { return code; } @@ -69,11 +74,7 @@ public class Variable { this.code = code; } - /** - * Label - **/ - @ApiModelProperty(value = "Label") - @JsonProperty("label") + public String getLabel() { return label; } @@ -82,11 +83,7 @@ public class Variable { this.label = label; } - /** - * Type - **/ - @ApiModelProperty(value = "Type") - @JsonProperty("type") + public String getType() { return type; } @@ -95,11 +92,7 @@ public class Variable { this.type = type; } - /** - * Length - **/ - @ApiModelProperty(value = "Length") - @JsonProperty("length") + public Integer getLength() { return length; } @@ -108,10 +101,7 @@ public class Variable { this.length = length; } - /** - * Is it a variable ? - **/ - @ApiModelProperty(value = "Is it a variable ?") + @JsonProperty("isVariable") public Boolean getIsVariable() { return isVariable; @@ -121,10 +111,7 @@ public class Variable { this.isVariable = isVariable; } - /** - * Is it a grouping variable ? - **/ - @ApiModelProperty(value = "Is it a grouping variable ?") + @JsonProperty("isGrouping") public Boolean getIsGrouping() { return isGrouping; @@ -134,10 +121,7 @@ public class Variable { this.isGrouping = isGrouping; } - /** - * Is it a co-variable ? - **/ - @ApiModelProperty(value = "Is it a co-variable ?") + @JsonProperty("isCovariable") public Boolean getIsCovariable() { return isCovariable; @@ -147,10 +131,7 @@ public class Variable { this.isCovariable = isCovariable; } - /** - * Is it a filter ? - **/ - @ApiModelProperty(value = "Is it a filter ?") + @JsonProperty("isFilter") public Boolean getIsFilter() { return isFilter; @@ -160,10 +141,7 @@ public class Variable { this.isFilter = isFilter; } - /** - **/ - @ApiModelProperty(value = "") - @JsonProperty("values") + public List<Value> getValues() { return values; } @@ -172,11 +150,7 @@ 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; } @@ -185,11 +159,7 @@ public class Variable { this.minValue = minValue; } - /** - * Maximum value (only for numbers) - **/ - @ApiModelProperty(value = "Maximum value (only for numbers)") - @JsonProperty("maxValue") + public Double getMaxValue() { return maxValue; } @@ -198,11 +168,7 @@ public class Variable { this.maxValue = maxValue; } - /** - * Units - **/ - @ApiModelProperty(value = "Units") - @JsonProperty("units") + public String getUnits() { return units; } @@ -211,6 +177,7 @@ public class Variable { this.units = units; } + public List<Query> getQueries() { return queries; } @@ -219,26 +186,4 @@ public class Variable { this.queries = queries; } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Variable {\n"); - - sb.append(" group: ").append(group).append("\n"); - sb.append(" code: ").append(code).append("\n"); - sb.append(" label: ").append(label).append("\n"); - sb.append(" type: ").append(type).append("\n"); - sb.append(" length: ").append(length).append("\n"); - sb.append(" isVariable: ").append(isVariable).append("\n"); - sb.append(" isGrouping: ").append(isGrouping).append("\n"); - sb.append(" isGrouping: ").append(isCovariable).append("\n"); - sb.append(" isFilter: ").append(isFilter).append("\n"); - sb.append(" values: ").append(values).append("\n"); - sb.append("}\n"); - return sb.toString(); - } - - public void addValue(Value value) { - this.values.add(value); - } } diff --git a/src/test/db b/src/test/db index 2551a33d32b4108bead9cdd6f11642e726a2b59b..e1fcb1c4915415abdd1e545b9f4c04276c5c4b0f 160000 --- a/src/test/db +++ b/src/test/db @@ -1 +1 @@ -Subproject commit 2551a33d32b4108bead9cdd6f11642e726a2b59b +Subproject commit e1fcb1c4915415abdd1e545b9f4c04276c5c4b0f