grsf-publisher-ws/src/main/java/org/gcube/data_catalogue/grsf_publish_ws/utils/groups/Exploitation_Rate.java

57 lines
1.3 KiB
Java

package org.gcube.data_catalogue.grsf_publish_ws.utils.groups;
import org.gcube.data_catalogue.grsf_publish_ws.custom_annotations.Group;
import com.fasterxml.jackson.annotation.JsonCreator;
/**
* Exploitation_Rate for Stock records
* @author Costantino Perciante at ISTI-CNR (costantino.perciante@isti.cnr.it)
*/
@Group
public enum Exploitation_Rate {
Moderate_Fishing_Mortality("Moderate fishing mortality"),
High_Fishing_Mortality("High fishing mortality"),
No_Or_Low_Fishing_Mortality("No or low fishing mortality");
private String subGroupNameOrig;
private String subGroupNameOnCkan;
private Exploitation_Rate(String origName) {
this.subGroupNameOrig = origName;
}
/**
* Return the name the group has on ckan
* @return
*/
public String getNameCkan(){
return subGroupNameOnCkan;
}
/**
* Return the original name
* @return
*/
public String getOrigName(){
return subGroupNameOrig;
}
@JsonCreator
public static Exploitation_Rate onDeserialize(String exploitationString) {
if(exploitationString != null) {
for (Exploitation_Rate exploitationValue : Exploitation_Rate.values()) {
if(exploitationValue.getOrigName().equalsIgnoreCase(exploitationString))
return exploitationValue;
}
}
return null;
}
@Override
public String toString() {
return getOrigName();
}
}