constract the getmethod
public int getLineNum() {
try {
return Integer.valueOf(FergusonStringUtils.trim(getLineNo()));
} catch (NumberFormatException e) {
// TODO: handle exception
return 0;
}
}
Collections.sort(lineItems, new SortUtil("lineNo", false));
public SortUtil(String pSortName, Boolean pSortByDesc) {
super();
mSortName = pSortName;
mSortByDesc = pSortByDesc == null ? false : pSortByDesc;
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
public int compare(final Object pO1, final Object pO2) {
if (StringUtils.isBlank(getSortName())) {
return 0;
}
if (getMethod() != null) {
return calculateCompareResult(getMethod(), pO1, pO2);
}
final Class c = pO1.getClass();
try {
setMethod(c.getMethod(buildMethodName("get")));
} catch (final NoSuchMethodException e) {
try {
setMethod(c.getMethod(buildMethodName("is")));
} catch (NoSuchMethodException e1) {
e1.printStackTrace();
} catch (SecurityException e1) {
e1.printStackTrace();
}
}
if (getMethod() == null) {
return 0;
}
return calculateCompareResult(getMethod(), pO1, pO2);
}