com.google.appengine.api.search
Class Field.Builder

java.lang.Object
  extended by com.google.appengine.api.search.Field.Builder
Enclosing class:
Field

public static final class Field.Builder
extends java.lang.Object

A field builder. Fields must have a name, and optionally a locale and at most one of text, html, atom or date.


Method Summary
 Field build()
          Builds a field using this builder.
 Field.Builder setAtom(java.lang.String atom)
          Sets an atomic value, indivisible text, for the field.
 Field.Builder setDate(java.util.Date date)
          Sets a date associated with the field.
 Field.Builder setHTML(java.lang.String html)
          Sets a HTML value for the field.
 Field.Builder setLocale(java.util.Locale locale)
          Sets the Locale of the field value.
 Field.Builder setName(java.lang.String name)
          Sets a name for the field.
 Field.Builder setNumber(double number)
          Sets a numeric value for the field.
 Field.Builder setText(java.lang.String text)
          Sets a text value for the field.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

setName

public Field.Builder setName(java.lang.String name)
Sets a name for the field. The field name length must be between 1 and FieldChecker#MAXIMUM_NAME_LENGTH and it should match FieldChecker.FIELD_NAME_PATTERN.

Parameters:
name - the name of the field
Throws:
java.lang.IllegalArgumentException - if the name or value is invalid

setText

public Field.Builder setText(java.lang.String text)
Sets a text value for the field.

Parameters:
text - the text value of the field
Throws:
java.lang.IllegalArgumentException - if the text is invalid

setHTML

public Field.Builder setHTML(java.lang.String html)
Sets a HTML value for the field.

Parameters:
html - the HTML value of the field
Throws:
java.lang.IllegalArgumentException - if the HTML is invalid

setAtom

public Field.Builder setAtom(java.lang.String atom)
Sets an atomic value, indivisible text, for the field.

Parameters:
atom - the indivisible text of the field
Throws:
java.lang.IllegalArgumentException - if the atom is invalid

setDate

public Field.Builder setDate(java.util.Date date)
Sets a date associated with the field. The date must not have a time component.

Parameters:
date - the date of the field
Throws:
java.lang.IllegalArgumentException - if the date has a time component

setNumber

public Field.Builder setNumber(double number)
Sets a numeric value for the field. The number must be between FieldChecker.MIN_NUMBER_VALUE and FieldChecker.MAX_NUMBER_VALUE.

Parameters:
number - the numeric value of the field
Throws:
java.lang.IllegalArgumentException - if the number is outside the valid range

setLocale

public Field.Builder setLocale(java.util.Locale locale)
Sets the Locale of the field value. If none is given, then the locale of the document will be used.

Parameters:
locale - the locale the field value is written in
Returns:
this builder

build

public Field build()
Builds a field using this builder. The field must have a valid name, string value, type.

Returns:
a Field built by this builder
Throws:
java.lang.IllegalArgumentException - if the field has an invalid name, text, HTML, atom, date