List of usage examples for com.google.common.collect Ordering Ordering
protected Ordering()
From source file:de.johni0702.minecraft.gui.container.AbstractGuiContainer.java
@Override public T sortElements(final Comparator<GuiElement> comparator) { Ordering<Map.Entry<GuiElement, LayoutData>> ordering = new Ordering<Map.Entry<GuiElement, LayoutData>>() { @Override/*from w w w. j a v a 2s . c o m*/ public int compare(Map.Entry<GuiElement, LayoutData> left, Map.Entry<GuiElement, LayoutData> right) { return comparator.compare(left.getKey(), right.getKey()); } }; if (!ordering.isOrdered(elements.entrySet())) { ImmutableList<Map.Entry<GuiElement, LayoutData>> sorted = ordering .immutableSortedCopy(elements.entrySet()); elements.clear(); for (Map.Entry<GuiElement, LayoutData> entry : sorted) { elements.put(entry.getKey(), entry.getValue()); } } return getThis(); }
From source file:com.google.devtools.build.lib.graph.Digraph.java
/** * Returns a deterministic immutable view of the nodes of this graph. */// w w w . ja va 2 s .c o m public Collection<Node<T>> getNodes(final Comparator<? super T> comparator) { Ordering<Node<T>> ordering = new Ordering<Node<T>>() { @Override public int compare(Node<T> o1, Node<T> o2) { return comparator.compare(o1.getLabel(), o2.getLabel()); } }; return ordering.immutableSortedCopy(nodes.values()); }
From source file:org.apache.brooklyn.location.jclouds.BrooklynImageChooser.java
/** @deprecated since 0.7.0 kept in case persisted */ @Deprecated// w w w. java2s . co m public Ordering<Image> orderingScoredWithoutDefaultsDeprecated() { return new Ordering<Image>() { @Override public int compare(Image left, Image right) { return BrooklynImageChooser.compare(score(left), score(right)); } }; }
From source file:de.hh.changeRing.user.User.java
private void sortDepot() { depotItems = new Ordering<DepotItem>() { @Override//from w w w. j a v a 2 s .co m public int compare(DepotItem depotItem, DepotItem depotItem1) { return depotItem1.getTransaction().getDate().compareTo(depotItem.getTransaction().getDate()); } }.sortedCopy(depotItems); }
From source file:nl.knaw.huygens.alexandria.query.AlexandriaQueryParser.java
private static Ordering<AnnotationVF> ordering(SortToken token) { boolean ascending = token.isAscending(); Function<AnnotationVF, Object> function = token.getField().getter; return new Ordering<AnnotationVF>() { @SuppressWarnings("unchecked") @Override/* w ww . java2 s. c om*/ public int compare(final AnnotationVF left, final AnnotationVF right) { return ascending// ? ((Comparable<Object>) function.apply(left)).compareTo(function.apply(right))// : ((Comparable<Object>) function.apply(right)).compareTo(function.apply(left)); } }; }
From source file:org.apache.brooklyn.location.jclouds.BrooklynImageChooser.java
/** @deprecated since 0.7.0 kept in case persisted */ @Deprecated/*from w w w .j a v a 2 s . c o m*/ public static Ordering<Image> orderingWithDefaultsDeprecated(final Ordering<Image> primaryOrdering) { return new Ordering<Image>() { @Override public int compare(Image left, Image right) { return ComparisonChain.start().compare(left, right, primaryOrdering) // fall back to default strategy otherwise, except preferring *non*-null values // TODO use AlphaNum string comparator .compare(left.getName(), right.getName(), Ordering.<String>natural().nullsFirst()) .compare(left.getVersion(), right.getVersion(), Ordering.<String>natural().nullsFirst()) .compare(left.getDescription(), right.getDescription(), Ordering.<String>natural().nullsFirst()) .compare(left.getOperatingSystem().getName(), right.getOperatingSystem().getName(), Ordering.<String>natural().nullsFirst()) .compare(left.getOperatingSystem().getVersion(), right.getOperatingSystem().getVersion(), Ordering.<String>natural().nullsFirst()) .compare(left.getOperatingSystem().getDescription(), right.getOperatingSystem().getDescription(), Ordering.<String>natural().nullsFirst()) .compare(left.getOperatingSystem().getArch(), right.getOperatingSystem().getArch(), Ordering.<String>natural().nullsFirst()) .result(); } }; }
From source file:de.hh.changeRing.user.User.java
public DepotItem getNewestDepotItem() { List<DepotItem> sorted = new Ordering<DepotItem>() { @Override/*www. j a v a2s . co m*/ public int compare(DepotItem o1, DepotItem o2) { return o2.getTransaction().getDate().compareTo(o1.getTransaction().getDate()); } }.sortedCopy(getDepotItems()); return sorted.isEmpty() ? null : sorted.get(0); }
From source file:org.apache.calcite.rel.metadata.RelMdCollation.java
private static Ordering<List<RexLiteral>> comparator(RelFieldCollation fieldCollation) { final int nullComparison = fieldCollation.nullDirection.nullComparison; final int x = fieldCollation.getFieldIndex(); switch (fieldCollation.direction) { case ASCENDING: return new Ordering<List<RexLiteral>>() { public int compare(List<RexLiteral> o1, List<RexLiteral> o2) { final Comparable c1 = o1.get(x).getValue(); final Comparable c2 = o2.get(x).getValue(); return RelFieldCollation.compare(c1, c2, nullComparison); }//from ww w . ja v a 2 s. c o m }; default: return new Ordering<List<RexLiteral>>() { public int compare(List<RexLiteral> o1, List<RexLiteral> o2) { final Comparable c1 = o1.get(x).getValue(); final Comparable c2 = o2.get(x).getValue(); return RelFieldCollation.compare(c2, c1, -nullComparison); } }; } }
From source file:org.jclouds.azurecompute.arm.compute.extensions.AzureComputeSecurityGroupExtension.java
private static Ordering<NetworkSecurityRule> rulesByPriority() { return new Ordering<NetworkSecurityRule>() { @Override/*from ww w . j a v a 2 s . com*/ public int compare(NetworkSecurityRule left, NetworkSecurityRule right) { return left.properties().priority() - right.properties().priority(); } }; }
From source file:org.dbpedia.spotlight.lucene.search.MergedOccurrencesContextSearcher.java
/** * * @param dbpediaResource// w w w.j ava 2 s. c om * @return map from term (word) to count */ public List<Map.Entry<String, Integer>> getContextWords(DBpediaResource dbpediaResource) throws SearchException { Map<String, Integer> termFreqMap = new HashMap<String, Integer>(); ScoreDoc[] docs = getHits(dbpediaResource); //TODO Create an exception DuplicateResourceException if (docs.length > 1) LOG.error(String.format("Resource %s has more than one document in the index. Maybe index corrupted?", dbpediaResource)); // Will accept multiple docs for a resource and get the overall top terms try { for (ScoreDoc d : docs) { TermFreqVector vector = mReader.getTermFreqVector(d.doc, LuceneManager.DBpediaResourceField.CONTEXT.toString()); if (vector == null) throw new SearchException( "The index you are using does not have term frequencies stored. Cannot run getContextWords(DBpediaResource)."); int[] freqs = vector.getTermFrequencies(); String[] terms = vector.getTerms(); for (int i = 0; i < vector.size(); i++) { termFreqMap.put(terms[i], freqs[i]); } } } catch (IOException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } Ordering descOrder = new Ordering<Map.Entry<String, Integer>>() { public int compare(Map.Entry<String, Integer> left, Map.Entry<String, Integer> right) { return Ints.compare(right.getValue(), left.getValue()); } }; List<Map.Entry<String, Integer>> sorted = descOrder.sortedCopy(termFreqMap.entrySet()); return sorted; }