SortExpression (Google App Engine API for Java)

com.google.appengine.api.search

Class SortExpression

  • java.lang.Object
    • com.google.appengine.api.search.SortExpression


  • public final class SortExpression
    extends java.lang.Object
    Sorting specification for a single dimension. Multi-dimensional sorting is supported by a collection of SortExpressions.
    • Field Detail

      • DOCUMENT_ID_FIELD_NAME

        public static final java.lang.String DOCUMENT_ID_FIELD_NAME
        The expression to be used if you wish to sort by document id field Document.getId(). You need to create a sort expression as
         SortExpression expr = SortExpression.newBuilder()
             .setExpression(SortExpression.DOCUMENT_ID_FIELD_NAME)
             .setDefaultValue("")
             .build();
         
        See Also:
        Constant Field Values
      • LANGUAGE_FIELD_NAME

        public static final java.lang.String LANGUAGE_FIELD_NAME
        The expression to be used if you wish to sort by language code associated with the locale field Document.getLocale(). You need to create a sort expression as
         SortExpression expr = SortExpression.newBuilder()
             .setExpression(SortExpression.LANGUAGE_FIELD_NAME)
             .setDefaultValue("")
             .build();
         
        See Also:
        Constant Field Values
      • RANK_FIELD_NAME

        public static final java.lang.String RANK_FIELD_NAME
        The expression to be used if you wish to sort by rank field. By default, results are sorted in descending value of rank. To sort in ascending order, you need to create a sort expression as
         SortExpression expr = SortExpression.newBuilder()
             .setExpression(SortExpression.RANK_FIELD_NAME)
             .setDirection(SortExpression.SortDirection.ASCENDING)
             .setDefaultValueNumeric(0)
             .build();
         
        See Also:
        Constant Field Values
      • SCORE_FIELD_NAME

        public static final java.lang.String SCORE_FIELD_NAME
        The expression to be used if you wish to sort by document score. You need to create a sort expression as
         SortExpression expr = SortExpression.newBuilder()
             .setExpression(String.format(
                 "%s + rating * 0.01", SortExpression.SCORE_FIELD_NAME))
             .setDirection(SortExpression.SortDirection.DESCENDING)
             .setDefaultValueNumeric(0)
             .build();
         
        See Also:
        Constant Field Values
      • TIMESTAMP_FIELD_NAME

        public static final java.lang.String TIMESTAMP_FIELD_NAME
        The expression to be used if you wish to sort by seconds since EPOCH that the document was written. You need to create a sort expression as
         SortExpression expr = SortExpression.newBuilder()
             .setExpression(SortExpression.TIMESTAMP_FIELD_NAME)
             .setDefaultValueNumeric(0)
             .build();
         
        See Also:
        Constant Field Values
    • Method Detail

      • getExpression

        public java.lang.String getExpression()
        Returns:
        the expression to evaluate for each document and sort by
      • getDefaultValue

        public java.lang.String getDefaultValue()
        Returns:
        the default value for the field. Can be null
      • getDefaultValueNumeric

        public java.lang.Double getDefaultValueNumeric()
        Returns:
        the default numeric value for the field. Can be null
      • getDefaultValueDate

        public java.util.Date getDefaultValueDate()
        Returns:
        the default date value for the field. Can be null
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object