public static <T extends GenericEntity>List<T> orderBy(Collection<T> values,List<String> orderBy){
  if (values == null)   return null;
  if (values.size() == 0)   return new LinkedList<T>();
  if (UtilValidate.isEmpty(orderBy)) {
    List<T> newList=new LinkedList<T>();
    newList.addAll(values);
    return newList;
  }
  List<T> result=new LinkedList<T>();
  result.addAll(values);
  if (Debug.verboseOn())   Debug.logVerbose("Sorting " + values.size() + " values, orderBy="+ orderBy.toString(),module);
  Collections.sort(result,new OrderByList(orderBy));
  return result;
}

public static < T extends GenericEntity > List < T > orderBy ( Collection < T > values , List < String > orderBy ) { if ( values == null ) return null ; if ( values . size ( ) == 0 ) return new LinkedList < T > ( ) ; if ( UtilValidate . isEmpty ( orderBy ) ) { List < T > newList = new LinkedList < T > ( ) ; newList . addAll ( values ) ; return newList ; } List < T > result = new LinkedList < T > ( ) ; result . addAll ( values ) ; if ( Debug . verboseOn ( ) ) Debug . logVerbose ( "Sorting " + values . size ( ) + " values, orderBy=" + orderBy . toString ( ) , module ) ; Collections . sort ( result , new OrderByList ( orderBy ) ) ; return result ; }
returns the values in the order specified
