@RequestMapping("/t/{tempo}/channels") public DeferredResult<ModelAndView> channels(@PathVariable("tempo") Tempo tempo) { DeferredResult<ModelAndView> deferred = new DeferredResult<>(); channelsRegistry .listChannels(tempo) .whenComplete((channels, throwable) -> { if (throwable != null) { deferred.setErrorResult(throwable); } else { List<Channel> sorted = channels.stream().sorted(new PropertyComparator<>("name", true, true)).collect(toList()); ModelAndView mav = new ModelAndView("channels") .addObject("tempo", tempo) .addObject("gameModes", gameModes) .addObject("channels", sorted); deferred.setResult(mav); } }); return deferred; }
@Override @SuppressWarnings("unchecked") public void setOrder(final List<Long> ids) { int order = 0; for (Long id : ids) { CF field = loadChecked(id); field.setOrder(++order); List<CustomField> children = new ArrayList<CustomField>(field.getChildren()); if (CollectionUtils.isNotEmpty(children)) { Collections.sort(children, new PropertyComparator("name", true, true)); for (CustomField child : children) { child.setOrder(++order); } } } getCache().clear(); }
@XmlElement public List<Specialty> getSpecialties() { List<Specialty> sortedSpecs = new ArrayList<>(getSpecialtiesInternal()); PropertyComparator.sort(sortedSpecs, new MutableSortDefinition("name", true, true)); return Collections.unmodifiableList(sortedSpecs); }
/** * 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)); } } }
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)); } }
@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(); }
public Binding createBoundComboBox(String formProperty, Object selectableItems, String renderedProperty) { Map context = createContext(ComboBoxBinder.SELECTABLE_ITEMS_KEY, selectableItems); context.put(ComboBoxBinder.RENDERER_KEY, new BeanPropertyValueListRenderer(renderedProperty)); context.put(ComboBoxBinder.EDITOR_KEY, new BeanPropertyEditorClosure(renderedProperty)); context.put(ComboBoxBinder.COMPARATOR_KEY, new PropertyComparator(renderedProperty, true, true)); return createBinding(JComboBox.class, formProperty, context); }
protected String setUpBinding() { lb = new ListBinder(); context = new HashMap(); selectableItems = Arrays.asList(new Object[] {new Item("A"), new Item("B"), new Item("C"), new Item("D"), new Item("E")}); context.put(ListBinder.SELECTABLE_ITEMS_KEY, selectableItems); context.put(ListBinder.RENDERER_KEY, new BeanPropertyValueListRenderer("name")); context.put(ListBinder.COMPARATOR_KEY, new PropertyComparator("name", true, false)); return "listProperty"; }
@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(); }
public List<Pet> getPets() { List<Pet> sortedPets = new ArrayList<>(getPetsInternal()); PropertyComparator.sort(sortedPets, new MutableSortDefinition("name", true, true)); return Collections.unmodifiableList(sortedPets); }
public List<Visit> getVisits() { List<Visit> sortedVisits = new ArrayList<>(getVisitsInternal()); PropertyComparator.sort(sortedVisits, new MutableSortDefinition("date", false, false)); return Collections.unmodifiableList(sortedVisits); }