diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Category.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Category.java index 07ac22e..6656b97 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Category.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Category.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.springframework.data.annotation.Id; import java.util.ArrayList; +import java.util.Date; import java.util.List; public class Category { @@ -14,8 +15,9 @@ public class Category { private String name; private String alias; private String description; - private boolean isActive; - private boolean isPublic; + private Visibility visibility = Visibility.PRIVATE; + private Date creationDate; + private Date updateDate; private boolean isOverview; private String defaultId; private List subCategories; @@ -26,8 +28,9 @@ public class Category { name = category.getName(); alias = category.getAlias(); description = category.getDescription(); - isActive = category.getIsActive(); - isPublic = category.getIsPublic(); + setVisibility(category.getVisibility()); + creationDate = category.getCreationDate(); + updateDate = category.getUpdateDate(); isOverview = category.getIsOverview(); defaultId = category.getDefaultId(); } @@ -36,8 +39,9 @@ public class Category { setName(defaultCategory.getName()); setAlias(defaultCategory.getAlias()); setDescription(defaultCategory.getDescription()); - setIsActive(defaultCategory.getIsActive()); - setIsPublic(defaultCategory.getIsPublic()); + setVisibility(defaultCategory.getVisibility()); + setCreationDate(defaultCategory.getCreationDate()); + setUpdateDate(defaultCategory.getUpdateDate()); setIsOverview(defaultCategory.getIsOverview()); setDefaultId(defaultCategory.getId()); setSubCategories(new ArrayList()); @@ -75,20 +79,28 @@ public class Category { this.description = description; } - public boolean getIsActive() { - return isActive; + public Visibility getVisibility() { + return visibility; } - public void setIsActive(boolean isActive) { - this.isActive = isActive; + public void setVisibility(Visibility visibility) { + this.visibility = visibility; } - public boolean getIsPublic() { - return isPublic; + public Date getCreationDate() { + return creationDate; } - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Date getUpdateDate() { + return updateDate; + } + + public void setUpdateDate(Date updateDate) { + this.updateDate = updateDate; } public boolean getIsOverview() { diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Indicator.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Indicator.java index 2db440c..ecc16bb 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Indicator.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Indicator.java @@ -3,17 +3,19 @@ package eu.dnetlib.uoamonitorservice.entities; import com.fasterxml.jackson.annotation.JsonProperty; import org.springframework.data.annotation.Id; -import java.util.ArrayList; +import java.util.Date; import java.util.List; enum IndicatorType { // Do not rename or remove existring values. This may cause problems with already stored values in DB - number, chart; + number, chart, + NUMBER, CHART; } -enum IndicatorWidth { +enum IndicatorSize { // Do not rename or remove existring values. This may cause problems with already stored values in DB - small, medium, large; + small, medium, large, + SMALL, MEDIUM, LARGE; } public class Indicator { @@ -23,22 +25,28 @@ public class Indicator { private String name; private String description; + private String additionalDescription; private IndicatorType type; //number,chart - private IndicatorWidth width; //small,medium,large + private IndicatorSize width; //small,medium,large + private IndicatorSize height = IndicatorSize.MEDIUM; //small,medium,large private List tags; // this field is not used anywhere now - private boolean isActive; - private boolean isPublic; + private Visibility visibility = Visibility.PRIVATE; + private Date creationDate; + private Date updateDate; private String defaultId; private List indicatorPaths; public void copyFromDefault(Indicator defaultIndicator) { setName(defaultIndicator.getName()); setDescription(defaultIndicator.getDescription()); + setAdditionalDescription(defaultIndicator.getAdditionalDescription()); setType(defaultIndicator.getType()); setWidth(defaultIndicator.getWidth()); + setHeight(defaultIndicator.getHeight()); setTags(defaultIndicator.getTags()); - setIsActive(defaultIndicator.getIsActive()); - setIsPublic(defaultIndicator.getIsPublic()); + setVisibility(defaultIndicator.getVisibility()); + setCreationDate(defaultIndicator.getCreationDate()); + setUpdateDate(defaultIndicator.getUpdateDate()); setDefaultId(defaultIndicator.getId()); setIndicatorPaths(defaultIndicator.getIndicatorPaths()); } @@ -67,6 +75,14 @@ public class Indicator { this.description = description; } + public String getAdditionalDescription() { + return additionalDescription; + } + + public void setAdditionalDescription(String description) { + this.additionalDescription = description; + } + public String getType() { if(type == null) { return null; @@ -90,14 +106,22 @@ public class Indicator { } } - public IndicatorWidth getWidth() { + public IndicatorSize getWidth() { return width; } - public void setWidth(IndicatorWidth width) { + public void setWidth(IndicatorSize width) { this.width = width; } + public IndicatorSize getHeight() { + return height; + } + + public void setHeight(IndicatorSize height) { + this.height = height; + } + public List getTags() { return tags; } @@ -106,20 +130,28 @@ public class Indicator { this.tags = tags; } - public boolean getIsActive() { - return isActive; + public Visibility getVisibility() { + return visibility; } - public void setIsActive(boolean isActive) { - this.isActive = isActive; + public void setVisibility(Visibility visibility) { + this.visibility = visibility; } - public boolean getIsPublic() { - return isPublic; + public Date getCreationDate() { + return creationDate; } - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Date getUpdateDate() { + return updateDate; + } + + public void setUpdateDate(Date updateDate) { + this.updateDate = updateDate; } public String getDefaultId() { diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/IndicatorPath.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/IndicatorPath.java index da7001a..3814476 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/IndicatorPath.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/IndicatorPath.java @@ -5,9 +5,14 @@ import java.util.Map; enum IndicatorPathType { // Do not rename or remove existring values. This may cause problems with already stored values in DB - table, bar, column, pie, line, other; + table, bar, column, pie, line, other, + TABLE, BAR, COLUMN, PIE, LINE, OTHER; } +//enum SourceType { +// STATISTICS, SEARCH, METRICS, STATS_TOOL,OLD,IMAGE; +//} + public class IndicatorPath { private IndicatorPathType type; // for charts is type of chart {table, bar, column, etc} private String source; // for numbers is the service {statistics, search, metrics} for charts is the tool {stats-tool,old,metrics, image} diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Section.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Section.java index 55ae56f..1f0f064 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Section.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Section.java @@ -4,11 +4,13 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.springframework.data.annotation.Id; import java.util.ArrayList; +import java.util.Date; import java.util.List; enum SectionType { // Do not rename or remove existring values. This may cause problems with already stored values in DB - number, chart; + number, chart, + NUMBER, CHART; } public class Section { @@ -20,6 +22,8 @@ public class Section { private String defaultId; private String stakeholderAlias; private SectionType type; + private Date creationDate; + private Date updateDate; private List indicators; public Section() {} @@ -30,12 +34,16 @@ public class Section { defaultId = section.getDefaultId(); stakeholderAlias = section.getStakeholderAlias(); setType(section.getType()); + creationDate = section.getCreationDate(); + updateDate = section.getUpdateDate(); } public void copyFromDefault(Section defaultSection) { setTitle(defaultSection.getTitle()); setType(defaultSection.getType()); setDefaultId(defaultSection.id); + setCreationDate(defaultSection.getCreationDate()); + setUpdateDate(defaultSection.getUpdateDate()); setIndicators(new ArrayList<>()); } @@ -87,6 +95,22 @@ public class Section { } } + public Date getCreationDate() { + return creationDate; + } + + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Date getUpdateDate() { + return updateDate; + } + + public void setUpdateDate(Date updateDate) { + this.updateDate = updateDate; + } + public List getIndicators() { return indicators; } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Stakeholder.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Stakeholder.java index 254d91f..524eb08 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Stakeholder.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Stakeholder.java @@ -10,7 +10,8 @@ import java.util.List; enum StakeholderType { // Do not rename or remove existring values. This may cause problems with already stored values in DB - funder, ri, project, organization; + funder, ri, project, organization, + FUNDER, RI, PROJECT, ORGANIZATION; } @@ -24,15 +25,14 @@ public class Stakeholder { private String index_name; private String index_shortName; private String logoUrl; + private boolean isUpload = false; private String name; private String alias; private String description; private String defaultId = null; - private boolean isActive; - private boolean isPublic; + private Visibility visibility = Visibility.PRIVATE; private Date creationDate; private Date updateDate; - private List managers; private List topics; @@ -46,15 +46,14 @@ public class Stakeholder { index_name = stakeholder.getIndex_name(); index_shortName = stakeholder.getIndex_shortName(); logoUrl = stakeholder.getLogoUrl(); + isUpload = stakeholder.getIsUpload(); name = stakeholder.getName(); alias = stakeholder.getAlias(); description = stakeholder.getDescription(); defaultId = stakeholder.getDefaultId(); - isActive = stakeholder.getIsActive(); - isPublic = stakeholder.getIsPublic(); + setVisibility(stakeholder.getVisibility()); creationDate = stakeholder.getCreationDate(); updateDate = stakeholder.getUpdateDate(); - managers = stakeholder.getManagers(); } public String getId() { @@ -121,6 +120,14 @@ public class Stakeholder { this.logoUrl = logoUrl; } + public boolean getIsUpload() { + return isUpload; + } + + public void setIsUpload(boolean isUpload) { + this.isUpload = isUpload; + } + public String getName() { return name; } public void setName(String name) { this.name = name; } @@ -149,20 +156,14 @@ public class Stakeholder { this.defaultId = defaultId; } - public boolean getIsActive() { - return isActive; + public Visibility getVisibility() { + //return visibility.getLabel(); + return visibility; } - public void setIsActive(boolean isActive) { - this.isActive = isActive; - } - - public boolean getIsPublic() { - return isPublic; - } - - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; + public void setVisibility(Visibility visibility) { + //this.visibility = Visibility.get(visibility); + this.visibility = visibility; } public Date getCreationDate() { @@ -181,14 +182,6 @@ public class Stakeholder { this.updateDate = updateDate; } - public List getManagers() { - return managers; - } - - public void setManagers(List managers) { - this.managers = managers; - } - public List getTopics() { return topics; } diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/SubCategory.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/SubCategory.java index a1e38f3..fc1c242 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/SubCategory.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/SubCategory.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.springframework.data.annotation.Id; import java.util.ArrayList; +import java.util.Date; import java.util.List; public class SubCategory { @@ -14,8 +15,9 @@ public class SubCategory { private String name; private String alias; private String description; - private boolean isActive; - private boolean isPublic; + private Visibility visibility = Visibility.PRIVATE; + private Date creationDate; + private Date updateDate; private String defaultId; private List charts; private List numbers; @@ -26,16 +28,18 @@ public class SubCategory { name = subCategory.getName(); alias = subCategory.getAlias(); description = subCategory.getDescription(); - isActive = subCategory.getIsActive(); - isPublic = subCategory.getIsPublic(); + setVisibility(subCategory.getVisibility()); + creationDate = subCategory.getCreationDate(); + updateDate = subCategory.getUpdateDate(); defaultId = subCategory.getDefaultId(); } public void createOverviewSubCategory(Category category) { setName("Overview"); setAlias("overview"); - setIsActive(category.getIsActive()); - setIsPublic(category.getIsPublic()); + setVisibility(category.getVisibility()); + setCreationDate(category.getCreationDate()); + setUpdateDate(category.getUpdateDate()); setCharts(new ArrayList<>()); setNumbers(new ArrayList<>()); } @@ -44,8 +48,9 @@ public class SubCategory { setName(defaultSubCategory.getName()); setAlias(defaultSubCategory.getAlias()); setDescription(defaultSubCategory.getDescription()); - setIsActive(defaultSubCategory.getIsActive()); - setIsPublic(defaultSubCategory.getIsPublic()); + setVisibility(defaultSubCategory.getVisibility()); + setCreationDate(defaultSubCategory.getCreationDate()); + setUpdateDate(defaultSubCategory.getUpdateDate()); setDefaultId(defaultSubCategory.getId()); setCharts(new ArrayList()); setNumbers(new ArrayList()); @@ -83,20 +88,28 @@ public class SubCategory { this.description = description; } - public boolean getIsActive() { - return isActive; + public Visibility getVisibility() { + return visibility; } - public void setIsActive(boolean isActive) { - this.isActive = isActive; + public void setVisibility(Visibility visibility) { + this.visibility = visibility; } - public boolean getIsPublic() { - return isPublic; + public Date getCreationDate() { + return creationDate; } - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Date getUpdateDate() { + return updateDate; + } + + public void setUpdateDate(Date updateDate) { + this.updateDate = updateDate; } public String getDefaultId() { diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Topic.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Topic.java index 1c3c90f..1fa77ae 100644 --- a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Topic.java +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Topic.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import org.springframework.data.annotation.Id; import java.util.ArrayList; +import java.util.Date; import java.util.List; public class Topic { @@ -15,8 +16,9 @@ public class Topic { private String alias; private String description; private String icon; - private boolean isActive; - private boolean isPublic; + private Visibility visibility = Visibility.PRIVATE; + private Date creationDate; + private Date updateDate; private String defaultId; private List categories; @@ -27,8 +29,9 @@ public class Topic { alias = topic.getAlias(); description = topic.getDescription(); icon = topic.getIcon(); - isActive = topic.getIsActive(); - isPublic = topic.getIsPublic(); + setVisibility(topic.getVisibility()); + creationDate = topic.getCreationDate(); + updateDate = topic.getUpdateDate(); defaultId = topic.getDefaultId(); } @@ -37,8 +40,9 @@ public class Topic { setAlias(defaultTopic.getAlias()); setDescription(defaultTopic.getDescription()); setIcon(defaultTopic.getIcon()); - setIsActive(defaultTopic.getIsActive()); - setIsPublic(defaultTopic.getIsPublic()); + setVisibility(defaultTopic.getVisibility()); + setCreationDate(defaultTopic.getCreationDate()); + setUpdateDate(defaultTopic.getUpdateDate()); setDefaultId(defaultTopic.getId()); setCategories(new ArrayList()); } @@ -83,20 +87,28 @@ public class Topic { this.icon = icon; } - public boolean getIsActive() { - return isActive; + public Visibility getVisibility() { + return visibility; } - public void setIsActive(boolean isActive) { - this.isActive = isActive; + public void setVisibility(Visibility visibility) { + this.visibility = visibility; } - public boolean getIsPublic() { - return isPublic; + public Date getCreationDate() { + return creationDate; } - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; + public void setCreationDate(Date creationDate) { + this.creationDate = creationDate; + } + + public Date getUpdateDate() { + return updateDate; + } + + public void setUpdateDate(Date updateDate) { + this.updateDate = updateDate; } public String getDefaultId() { diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/entities/Visibility.java b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Visibility.java new file mode 100644 index 0000000..50b655c --- /dev/null +++ b/src/main/java/eu/dnetlib/uoamonitorservice/entities/Visibility.java @@ -0,0 +1,38 @@ +package eu.dnetlib.uoamonitorservice.entities; + +import java.util.HashMap; +import java.util.Map; + +public enum Visibility { + // Do not rename or remove existring values. This may cause problems with already stored values in DB + // PUBLIC("public"), RESTRICTED("restricted"), PRIVATE("private"); + + PUBLIC, RESTRICTED, PRIVATE +// private String label; +// +// private Visibility(String label) { +// this.label = label; +// } +// +// public String getLabel() { +// return this.label; +// } +// +// //Lookup table +// private static final Map lookup = new HashMap<>(); +// +// //Populate the lookup table on loading time +// static +// { +// for(Visibility visibility : Visibility.values()) +// { +// lookup.put(visibility.getLabel(), visibility); +// } +// } +// +// //This method can be used for reverse lookup purpose +// public static Visibility get(String visibility) +// { +// return lookup.get(visibility); +// } +}