package charts;
import org.apache.commons.lang3.StringUtils;
public enum ChartType {
MARINE ("Marine"),
MARINE_V2 ("Marine"),
COTS_OUTBREAK ("Crown of Thorns Outbreak"),
ANNUAL_RAINFALL ("Annual Rainfall"),
PROGRESS_TABLE ("Progress Table"),
PROGRESS_TABLE_REGION ("Progress Table Region"),
PROGRESS_TABLE_TILE ("Progress Table Tile"),
TTT_CANE_AND_HORT ("Tracking Towards Target - Cane and Horticulture"),
TTT_GRAZING ("Tracking Towards Target - Grazing"),
TTT_SEDIMENT ("Tracking Towards Target - Sediment"),
TTT_NITRO_AND_PEST ("Tracking Towards Target - Nitrogen and Pesticide"),
GRAZING_PS ("Grazing Practice Systems"),
HORTICULTURE_PS ("Horticulture Practice Systems"),
SUGARCANE_PS ("Sugarcane Practice Systems"),
GRAINS_PS("Grains Practice Systems"),
TSA("Trends in seagrass abundance"),
GROUNDCOVER("Groundcover"),
GROUNDCOVER_BELOW_50("Groundcover below 50%"),
LOADS("Loads"),
LOADS_DIN("Loads Dissolved Inorganic nitrogen"),
LOADS_PSII("Loads PSII pesticides"),
LOADS_TSS("Loads Total suspended solids"),
LOADS_PN("Loads Particulate Nitrogen"),
LOADS_PP("Loads Particulate Phosphorus"),
CORAL_HCC("Hard coral cover"),
CORAL_SCC("Soft coral cover"),
CORAL_MA("Macroalgae"),
CORAL_JUV("Juvenile density"),
CORAL_HCC_GBR("Hard coral cover"),
CORAL_SCC_GBR("Soft coral cover"),
CORAL_MA_GBR("Macroalgae"),
CORAL_JUV_GBR("Juvenile density"),
PSII_TRENDS("PSII Trends"),
PSII_MAX_HEQ("Maximum PSII Herbicide Equivalent Concentrations"),
MARINE_WQT("Water quality trend"),
MARINE_ST("Seagrass trend"),
MARINE_CT("Coral trend"),
RIPARIAN_FOREST_LOSS_TOTAL("Riparian forest loss since pre-European extend"),
RIPARIAN_FOREST_LOSS("Riparian forest loss"),
WETLANDS_LOSS("Wetlands loss"),
WETLANDS_REMAINING("Wetlands remaining"),
TOTAL_SUSPENDED_SEDIMENT("Total Suspended Sediment"),
CHLOROPHYLL_A("Chlorophyll \u03b1"),
;
private final String label;
private ChartType(String label) {
this.label = label;
}
public String getLabel() {
return label;
}
public boolean hasUniqueLabel() {
for(ChartType t : ChartType.values()) {
if(this != t && StringUtils.equals(getLabel(), t.getLabel())) {
return false;
}
}
return true;
}
public static ChartType getChartType(String str) {
return ChartType.valueOf(str.toUpperCase());
}
public static ChartType lookup(String s) {
for(ChartType t : ChartType.values()) {
if(StringUtils.equalsIgnoreCase(t.getLabel(), s) ||
StringUtils.equalsIgnoreCase(t.name(), s)) {
return t;
}
}
return null;
}
}