예제 #1
0
 private String[] reverseFieldPath(List<String> path) {
   final String[] reversedPath = new String[path.size()];
   for (int i = 0; i < reversedPath.length; i++) {
     reversedPath[i] = path.get(path.size() - i - 1);
   }
   return reversedPath;
 }
예제 #2
0
  protected final void addOrdering(Direction direction, List<String> path) {

    if (i_field != null) {
      path.add(i_field);
    }

    if (i_parent != null) {
      i_parent.addOrdering(direction, path);
      return;
    }

    final String[] fieldPath = reverseFieldPath(path);
    removeExistingOrderingFor(fieldPath);
    orderings().add(new SodaQueryComparator.Ordering(direction, fieldPath));
  }
예제 #3
0
 private IntComparator newSodaQueryComparator() {
   return new SodaQueryComparator(
       (LocalObjectContainer) this.transaction().container(),
       extentType(),
       _orderings.toArray(new SodaQueryComparator.Ordering[_orderings.size()]));
 }