code: public void sort(List<?> list, String property, boolean reverse) {
          Class<?> type = getObjectClass(list);
          if (type != null) {
              sort(list, type, property, reverse);
          }
      }
docs: Sort the given list by using the given property to evaluate against
  each element in the list comparing the resulting values. For example,
  if the object list contained User instances that had a lastName
  property, then you could sort the list by last name via:
  <code>sort(users, 'lastName', false)</code>. Note that the determination
  of the list type is based purely on the first non-<code>null</code>
  element in the list and all other instances in the list are expected to
  conform to the same type. Use
  {@link #sort(List, Class, String, boolean)} to explicitly provide the
  underlying type.
  
  @param list The list to sort
  @param property The name of the property on the elements to sort against
  @param reverse The state of whether to reverse the order