import java.util.Map;
public enum MapNameWithId {
CANCELBOOKING("2006", "CancelBooking",
"CancelBooking");
private String code;
private String label;
private String description;
private static Map<String, MapNameWithId> codeToClassMapping;
private MapNameWithId(String code, String label, String description) {
this.code = code;
this.label = label;
this.description = description;
}
/*
* This method for getting name of class based on ID
*/
public static String getCode(String i) {
String returnValue=null;
if (codeToClassMapping == null) {
initMapping();
}
MapNameWithId result = null;
result = codeToClassMapping.get(i);
if(result==null){
returnValue="We do not have matching code for given class name";
}else{
returnValue=result.getCode();
}
return returnValue;
}
private static void initMapping() {
codeToClassMapping = new HashMap<String, MapNameWithId>();
for (MapNameWithId s : values()) {
codeToClassMapping.put(s.label, s);
}
}
public String getCode() {
return code;
}
public String getLabel() {
return label;
}
public String getDescription() {
return description;
}
@Override
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("Status");
sb.append("{code=").append(code);
sb.append(", label='").append(label).append('\'');
sb.append(", description='").append(description).append('\'');
sb.append('}');
return sb.toString();
}
}
nice
ReplyDelete