Package com.google.appengine.api.search
Class Document
- java.lang.Object
-
- com.google.appengine.api.search.Document
-
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
ScoredDocument
public class Document extends Object implements Serializable
Represents a user generated document. The following example shows how to create a document consisting of a set of fields, some with plain text and some in HTML; it also adds facets to the document.
The following example shows how to access the fields within a document:Document document = Document.newBuilder().setId("document id") .setLocale(Locale.UK) .addField(Field.newBuilder() .setName("subject") .setText("going for dinner")) .addField(Field.newBuilder() .setName("body") .setHTML("<html>I found a restaurant.</html>")) .addField(Field.newBuilder() .setName("signature") .setText("ten post jest przeznaczony dla odbiorcy") .setLocale(new Locale("pl"))) .addFacet(Facet.withAtom("tag", "food")) .addFacet(Facet.withNumber("priority", 5.0)) .build();
And this example shows how to access the facets within a document:Document document = ... for (Field field : document.getFields()) { switch (field.getType()) { case TEXT: use(field.getText()); break; case HTML: use(field.getHtml()); break; case ATOM: use(field.getAtom()); break; case DATE: use(field.getDate()); break; } }Document document = ... for (Facet facet : document.getFacets()) { switch (facet.getType()) { case ATOM: use(facet.getAtom()); break; case NUMBER: use(facet.getNumber()); break; } }- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDocument.BuilderA builder of documents.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object object)intgetFacetCount(String name)Returns the number of times a facet with the given name is present in this document.Set<String>getFacetNames()Returns an unmodifiableSetof the facet names in the documentIterable<Facet>getFacets()Returns an iterable ofFacetin the documentIterable<Facet>getFacets(String name)Returns an iterable of all facets with the given name.intgetFieldCount(String name)Returns the number of times a field with the given name is present in this document.Set<String>getFieldNames()Returns an unmodifiableSetof the field names in the documentIterable<Field>getFields()Returns an iterable ofFieldin the documentIterable<Field>getFields(String name)Returns an iterable of all fields with the given name.StringgetId()LocalegetLocale()FacetgetOnlyFacet(String name)Returns the single facet with the given name.FieldgetOnlyField(String name)Returns the single field with the given name.intgetRank()Returns the rank of this document.inthashCode()static Document.BuildernewBuilder()Creates a new document builder.StringtoString()
-
-
-
Method Detail
-
getFieldNames
public Set<String> getFieldNames()
Returns an unmodifiableSetof the field names in the document
-
getFacetNames
public Set<String> getFacetNames()
Returns an unmodifiableSetof the facet names in the document
-
getFields
public Iterable<Field> getFields(String name)
Returns an iterable of all fields with the given name.
-
getFacets
public Iterable<Facet> getFacets(String name)
Returns an iterable of all facets with the given name.
-
getOnlyField
public Field getOnlyField(String name)
Returns the single field with the given name.- Parameters:
name- the name of the field to return- Returns:
- the single field with name
- Throws:
IllegalArgumentException- if the document does not have exactly one field with the name
-
getOnlyFacet
public Facet getOnlyFacet(String name)
Returns the single facet with the given name.- Parameters:
name- the name of the facet to return- Returns:
- the single facet with name
- Throws:
IllegalArgumentException- if the document does not have exactly one facet with the name
-
getFieldCount
public int getFieldCount(String name)
Returns the number of times a field with the given name is present in this document.- Parameters:
name- the name of the field to be counted- Returns:
- the number of times a field with the given name is present
-
getFacetCount
public int getFacetCount(String name)
Returns the number of times a facet with the given name is present in this document.- Parameters:
name- the name of the facet to be counted- Returns:
- the number of times a facet with the given name is present
-
getId
public String getId()
- Returns:
- the id of the document
-
getRank
public int getRank()
Returns the rank of this document. A document's rank is used to determine the default order in which documents are returned by search, if no sorting or scoring is specified.- Returns:
- the rank of this document
-
newBuilder
public static Document.Builder newBuilder()
Creates a new document builder. You must use this method to obtain a new builder. The returned builder must be used to specify all properties of the document. To obtain the document call theDocument.Builder.build()method on the returned builder.- Returns:
- a builder which constructs a document object
-
-