Package com.datasalt.pangool.tuplemr.Criteria

Examples of com.datasalt.pangool.tuplemr.Criteria.SortElement


  private Criteria convertCommonSortByToCriteria(OrderBy orderBy) {
    if(orderBy == null) {
      // then the common sortBy is by default the group fields in ASC order
      List<SortElement> elements = new ArrayList<SortElement>();
      for(String groupField : groupByFields) {
        elements.add(new SortElement(groupField, Order.ASC));
      }
      return new Criteria(elements);
    } else if(orderBy.getSchemaOrderIndex() == null
        || orderBy.getSchemaOrderIndex() == orderBy.getElements().size()) {
      return new Criteria(orderBy.getElements());
View Full Code Here


  public int compare(Schema schema, Criteria c, ITuple w1, int[] index1, ITuple w2,
      int[] index2,FieldSerializer[] serializers) {
    for(int i = 0; i < c.getElements().size(); i++) {
      Field field = schema.getField(i);
      SortElement e = c.getElements().get(i);
      Object o1 = w1.get(index1[i]);
      Object o2 = w2.get(index2[i]);
      FieldSerializer serializer = (serializers == null) ? null : serializers[i];
      int comparison = compareObjects(o1, o2, e.getCustomComparator(), field.getType(),serializer);
      if(comparison != 0) {
        return(e.getOrder() == Order.ASC ? comparison : -comparison);
      }
    }
    return 0;
  }
View Full Code Here

    o.offset1 = s1;
    o.offset2 = s2;
    for(int depth = 0; depth < criteria.getElements().size(); depth++) {
      Field field = schema.getField(depth);
      Field.Type type = field.getType();
      SortElement sortElement = criteria.getElements().get(depth);
      Order sort = sortElement.getOrder();
      RawComparator comparator = sortElement.getCustomComparator();

      if(comparator != null) {
        //custom comparator for OBJECT
        int length1 = WritableComparator.readVInt(b1, o.offset1);
        int length2 = WritableComparator.readVInt(b2, o.offset2);
View Full Code Here

  private Criteria convertCommonSortByToCriteria(OrderBy orderBy) {
    if(orderBy == null) {
      // then the common sortBy is by default the group fields in ASC order
      List<SortElement> elements = new ArrayList<SortElement>();
      for(String groupField : groupByFields) {
        elements.add(new SortElement(groupField, Order.ASC));
      }
      return new Criteria(elements);
    } else if(orderBy.getSchemaOrderIndex() == null
        || orderBy.getSchemaOrderIndex() == orderBy.getElements().size()) {
      return new Criteria(orderBy.getElements());
View Full Code Here

   *
   * @see Order
   */
  public OrderBy add(String name, Order order) {
    failIfFieldNamePresent(name);
    this.elements.add(new SortElement(name, order));
    return this;
  }
View Full Code Here

   *
   * @see Order
   */
  public OrderBy add(String name, Order order, RawComparator<?> comparator) {
    failIfFieldNamePresent(name);
    this.elements.add(new SortElement(name, order, comparator));
    return this;
  }
View Full Code Here

  private Criteria convertCommonSortByToCriteria(OrderBy orderBy) {
    if(orderBy == null) {
      // then the common sortBy is by default the group fields in ASC order
      List<SortElement> elements = new ArrayList<SortElement>();
      for(String groupField : groupByFields) {
        elements.add(new SortElement(groupField, Order.ASC));
      }
      return new Criteria(elements);
    } else if(orderBy.getSchemaOrderIndex() == null
        || orderBy.getSchemaOrderIndex() == orderBy.getElements().size()) {
      return new Criteria(orderBy.getElements());
View Full Code Here

  private Criteria convertCommonSortByToCriteria(OrderBy orderBy) {
    if (orderBy == null) {
      // then the common sortBy is by default the group fields in ASC order
      List<SortElement> elements = new ArrayList<SortElement>();
      for (String groupField : groupByFields) {
        elements.add(new SortElement(groupField, Order.ASC, Criteria.NullOrder.NULL_SMALLEST));
      }
      return new Criteria(elements);
    } else if (orderBy.getSchemaOrderIndex() == null
        || orderBy.getSchemaOrderIndex() == orderBy.getElements().size()) {
      return new Criteria(orderBy.getElements());
View Full Code Here

   * @param order Field's order
   * @see Order
   */
  public OrderBy add(String name, Order order) {
    failIfFieldNamePresent(name);
    this.elements.add(new SortElement(name, order, NullOrder.NULL_SMALLEST));
    return this;
  }
View Full Code Here

   * @see Order
   * @see NullOrder
   */
  public OrderBy add(String name, Order order, NullOrder nullOrder) {
    failIfFieldNamePresent(name);
    this.elements.add(new SortElement(name, order, nullOrder));
    return this;
  }
View Full Code Here

TOP

Related Classes of com.datasalt.pangool.tuplemr.Criteria.SortElement

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.