SortBy.java
package com.tradecloud.domain.model.fec;
import java.util.HashMap;
import java.util.Map;
public enum SortBy {
CURRENCY("amount.currency", "amount_currency", "Currency"), MATURITY_DATE("maturityDate", "maturity_date", "Maturity Date"), DEAL_DATE(
"dealDate", "deal_date", "Deal Date"), BANK_REFERENCE("bankReference", "bank_reference", "Bank Reference"), BANK_DEALER(
"bankDetails.dealer", "bank_details_dealer", "Bank Dealer");
private String propertyName;
private String dbFieldName;
private String description;
private static final Map<String, SortBy> lookup = new HashMap<String, SortBy>();
static {
for (SortBy sortBy : SortBy.values())
lookup.put(sortBy.propertyName, sortBy);
}
public static String toXML() {
StringBuilder sortByXML = new StringBuilder();
sortByXML.append("<sortbys>");
for (SortBy sortBy : lookup.values()) {
sortByXML.append("<sortby>");
sortByXML.append("<code>").append(sortBy.getPropertyName()).append("</code>");
sortByXML.append("<name>").append(sortBy.getDescription()).append("</name>");
sortByXML.append("</sortby>");
}
sortByXML.append("</sortbys>");
return sortByXML.toString();
}
SortBy(String propertyName, String dbFieldName, String description) {
this.propertyName = propertyName;
this.dbFieldName = dbFieldName;
this.description = description;
}
public static SortBy get(String propertyName) {
return lookup.get(propertyName);
}
public String getPropertyName() {
return propertyName;
}
public String getDbFieldName() {
return dbFieldName;
}
public String getDescription() {
return description;
}
}