diff --git a/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/PeriodDataType.java b/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/PeriodDataType.java index 3f1067b..f004427 100644 --- a/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/PeriodDataType.java +++ b/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/PeriodDataType.java @@ -16,18 +16,26 @@ public enum PeriodDataType { DAY("Day"), MONTH("Month"), QUARTER("Quarter_of_year"), - YEAR("Year"); - + YEAR("Year"), + DECADE("Decade"), + CENTURY("Century"); private static Map> hierarchicalRelation = new HashMap>(); static { - hierarchicalRelation.put(DAY, Arrays.asList(MONTH, QUARTER, YEAR)); - hierarchicalRelation.put(MONTH, Arrays.asList(QUARTER, YEAR)); - hierarchicalRelation.put(QUARTER, Arrays.asList(YEAR)); + hierarchicalRelation.put(DAY, Arrays.asList(MONTH, QUARTER, YEAR, DECADE, CENTURY)); + hierarchicalRelation.put(MONTH, Arrays.asList(QUARTER, YEAR, DECADE, CENTURY)); + hierarchicalRelation.put(QUARTER, Arrays.asList(YEAR, DECADE, CENTURY)); + hierarchicalRelation.put(YEAR, Arrays.asList(DECADE, CENTURY)); + hierarchicalRelation.put(DECADE, Arrays.asList(CENTURY)); } + + private static final int START_YEAR = 1700; + + private static final int END_YEAR = 2300; + /** * @param text */ @@ -60,10 +68,52 @@ public enum PeriodDataType { return "Quarter of year"; case YEAR: return "Year"; + case DECADE: + return "Decade"; + case CENTURY: + return "Century"; default: return null; } } + + public static int getStartYear(){ + return START_YEAR; + } + + public static int getEndYear(){ + return END_YEAR; + } + + + public static PeriodDataType getPeriodFromString(String period){ + if(period.compareToIgnoreCase(PeriodDataType.DAY.toString())==0){ + return PeriodDataType.DAY; + } else { + if(period.compareToIgnoreCase(PeriodDataType.MONTH.toString())==0){ + return PeriodDataType.MONTH; + } else { + if(period.compareToIgnoreCase(PeriodDataType.QUARTER.toString())==0){ + return PeriodDataType.QUARTER; + } else { + if(period.compareToIgnoreCase(PeriodDataType.YEAR.toString())==0){ + return PeriodDataType.YEAR; + } else { + if(period.compareToIgnoreCase(PeriodDataType.DECADE.toString())==0){ + return PeriodDataType.DECADE; + } else { + if(period.compareToIgnoreCase(PeriodDataType.CENTURY.toString())==0){ + return PeriodDataType.CENTURY; + } else { + return null; + } + } + } + } + } + } + } + } diff --git a/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/TimeDimensionType.java b/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/TimeDimensionType.java deleted file mode 100644 index 7ab6d68..0000000 --- a/src/main/java/org/gcube/portlets/user/td/widgetcommonevent/shared/tr/column/TimeDimensionType.java +++ /dev/null @@ -1,23 +0,0 @@ -package org.gcube.portlets.user.td.widgetcommonevent.shared.tr.column; - -public enum TimeDimensionType { - Day("Day"), - Month("Month"), - Quarter("Quarter of year"), - Year("Year"); - - /** - * - * @param id - */ - private TimeDimensionType(final String time) { - this.time = time; - } - - private final String time; - - @Override - public String toString() { - return time; - } -}