com.google.appengine.api.search.dev
Class FieldExpression

java.lang.Object
  extended by com.google.appengine.api.search.dev.Expression
      extended by com.google.appengine.api.search.dev.FieldExpression

public class FieldExpression
extends Expression

Expression which evalutes to the content of a field.


Nested Class Summary
 
Nested classes/interfaces inherited from class com.google.appengine.api.search.dev.Expression
Expression.Sorter
 
Constructor Summary
FieldExpression(java.lang.String fieldName, java.util.Set<ContentType> fieldTypes)
           
 
Method Summary
 FieldValue eval(Document doc)
          Evaluate the expression to field value proto for the specified document.
 double evalDouble(Document doc)
          Evaluate double value from specified document.
 FieldValue evalWithTypePriority(Document doc, java.util.List<ContentType> typePriority)
           
 Expression.Sorter getNumericSorter(int sign, double defaultValueNumeric)
           
 java.util.List<Expression.Sorter> getSorters(int sign, double defaultValueNumeric, java.lang.String defaultValueText)
          Get list of sort classes for the expression.
static FieldExpression makeFieldExpression(java.lang.String fieldName, java.util.Set<ContentType> fieldTypes)
           
 
Methods inherited from class com.google.appengine.api.search.dev.Expression
makeValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FieldExpression

public FieldExpression(java.lang.String fieldName,
                       java.util.Set<ContentType> fieldTypes)
Method Detail

makeFieldExpression

public static FieldExpression makeFieldExpression(java.lang.String fieldName,
                                                  java.util.Set<ContentType> fieldTypes)

evalDouble

public double evalDouble(Document doc)
                  throws EvaluationException
Evaluate double value from specified document.

Throws:
EvaluationException

eval

public FieldValue eval(Document doc)
                throws EvaluationException
Description copied from class: Expression
Evaluate the expression to field value proto for the specified document.

Throws:
EvaluationException

evalWithTypePriority

public FieldValue evalWithTypePriority(Document doc,
                                       java.util.List<ContentType> typePriority)
                                throws EvaluationException
Throws:
EvaluationException

getSorters

public java.util.List<Expression.Sorter> getSorters(int sign,
                                                    double defaultValueNumeric,
                                                    java.lang.String defaultValueText)
Description copied from class: Expression
Get list of sort classes for the expression. Usually it contains just one element, but for field expressions it can potentially return 2 sorters when both numeric and text fields exist with a field name.

Returns:
at most 2 sorters. First, special case for numberic fields. Second, alpha-numerical sort for other field types.

getNumericSorter

public Expression.Sorter getNumericSorter(int sign,
                                          double defaultValueNumeric)