Java 类org.springframework.beans.support.SortDefinition 实例源码

项目:artifactory    文件:ListPropertySorter.java   
/**
 * Sorts the input string using property comparator. The property must have a getter and must be primitive type or
 * to implement Comparable. The sort is not case sensitive if the property is character based.
 *
 * @param listToSort Modifiable list to sort
 * @param sortParam  The property to sort by and is ascending or descending.
 */
public static void sort(List listToSort, SortParam sortParam) {
    if (!listToSort.isEmpty() && sortParam != null) {
        final String property = sortParam.getProperty();
        if (StringUtils.hasText(property)) {
            final SortDefinition sortDefinition = new MutableSortDefinition(property, true,
                    sortParam.isAscending());
            Collections.sort(listToSort, new PropertyComparator(sortDefinition));
        }
    }
}
项目:artifactory    文件:MasterDetailRowPanel.java   
private void sortList(List<D> list, SortParam sortParam) {
    if (sortParam != null && sortParam.getProperty().startsWith("detail.")) {
        ListPropertySorter.sort(list, sortParam);
        final String property = sortParam.getProperty().substring(7);
        final SortDefinition sortDefinition = new MutableSortDefinition(property, true, sortParam.isAscending());
        Collections.sort(list, new PropertyComparator(sortDefinition));
    }
}
项目:artifactory    文件:MasterDetailTable.java   
@Override
@SuppressWarnings({"unchecked"})
public Iterator iterator(int first, int count) {
    final SortParam sortParam = getSort();
    if (sortParam != null && sortParam.getProperty().startsWith("master.")) {
        ListPropertySorter.sort(list, sortParam);
        final String property = sortParam.getProperty().substring(7);
        final SortDefinition sortDefinition = new MutableSortDefinition(property, true,
                sortParam.isAscending());
        Collections.sort(list, new PropertyComparator(sortDefinition));
    }
    List<?> result = list.subList(first, first + count);
    return result.iterator();
}
项目:nextreports-server    文件:SortableDataAdapter.java   
@Override
public Iterator<T> iterator(long first, long count) {
    long size = provider.size();
    List<T> resources = new ArrayList<T>((int) size);
    Iterator<? extends T> iter = provider.iterator(0, size);
    while (iter.hasNext()) {
        resources.add(iter.next());
    }

    if (comparators != null) {
        SortParam<String> sortParam = getSort();
        if (sortParam != null) {
            String sortProperty = sortParam.getProperty();
            if (sortProperty != null) {
                Comparator<T> comparator = comparators.get(sortProperty);
                if (comparator != null) {
                    Collections.sort(resources, comparator);
                    if (getSort().isAscending() == false) {
                        Collections.reverse(resources);
                    }
                } else {
                    SortDefinition sortDefinition = new MutableSortDefinition(sortProperty, true, getSort().isAscending());
                    PropertyComparator.sort(resources, sortDefinition);
                }                       
            }
        }
    }

    return Collections.unmodifiableList(resources.subList((int) first, (int) (first + count))).iterator();
}
项目:CAPortal    文件:PartialPagedListHolder.java   
/**
 * Return the sort definition for this holder.
 */
public SortDefinition getSort() {
    return this.sort;
}
项目:spring-rich-client    文件:SwingBindingFactoryTests.java   
private String getComparatorProperty(TestableBinding b) {
    // TODO: remove this nasty reflection once PropertyComparator is extended with the abbility
    // to query the SortDefinition
    return ((SortDefinition)getField(b.getContext().get(ListBinder.COMPARATOR_KEY),
            "sortDefinition")).getProperty();
}
项目:spring-richclient    文件:SwingBindingFactoryTests.java   
private String getComparatorProperty(TestableBinding b) {
    // TODO: remove this nasty reflection once PropertyComparator is extended with the abbility
    // to query the SortDefinition
    return ((SortDefinition)getField(b.getContext().get(ListBinder.COMPARATOR_KEY),
            "sortDefinition")).getProperty();
}
项目:CAPortal    文件:PartialPagedListHolder.java   
/**
 * Create a new holder instance with the given source list.
 *
 * @param source the source List
 * @param sort the SortDefinition to start with
 */
public PartialPagedListHolder(List<E> source, SortDefinition sort) {
    setSource(source);
    setSort(sort);
}
项目:CAPortal    文件:PartialPagedListHolder.java   
/**
 * Create a new holder instance with the given source list.
 *
 * @param source the source List
 * @param sort the SortDefinition to start with
 */
public PartialPagedListHolder(List<E> source, int totalRows, SortDefinition sort) {
    setSource(source);
    setTotalRows(totalRows);
    setSort(sort);
}
项目:CAPortal    文件:PartialPagedListHolder.java   
/**
 * Set the sort definition for this holder. Typically an instance of
 * MutableSortDefinition.
 *
 * @see org.springframework.beans.support.MutableSortDefinition
 */
public void setSort(SortDefinition sort) {
    this.sort = sort;
}