Document (Google App Engine API for Java)

com.google.appengine.api.search

Class Document

  • java.lang.Object
    • com.google.appengine.api.search.Document
  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    ScoredDocument


    public class Document
    extends java.lang.Object
    implements java.io.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.
        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();
     
    The following example shows how to access the fields 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;
          }
        }
     
    And this example shows how to access the facets within a document:
        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 and Description
      static class  Document.Builder
      A builder of documents.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      boolean equals(java.lang.Object object) 
      int getFacetCount(java.lang.String name)
      Returns the number of times a facet with the given name is present in this document.
      java.util.Set<java.lang.String> getFacetNames()
      Returns an unmodifiable Set of the facet names in the document
      java.lang.Iterable<Facet> getFacets()
      Returns an iterable of Facet in the document
      java.lang.Iterable<Facet> getFacets(java.lang.String name)
      Returns an iterable of all facets with the given name.
      int getFieldCount(java.lang.String name)
      Returns the number of times a field with the given name is present in this document.
      java.util.Set<java.lang.String> getFieldNames()
      Returns an unmodifiable Set of the field names in the document
      java.lang.Iterable<Field> getFields()
      Returns an iterable of Field in the document
      java.lang.Iterable<Field> getFields(java.lang.String name)
      Returns an iterable of all fields with the given name.
      java.lang.String getId() 
      java.util.Locale getLocale() 
      Facet getOnlyFacet(java.lang.String name)
      Returns the single facet with the given name.
      Field getOnlyField(java.lang.String name)
      Returns the single field with the given name.
      int getRank()
      Returns the rank of this document.
      int hashCode() 
      static Document.Builder newBuilder()
      Creates a new document builder.
      java.lang.String toString() 
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • Method Detail

      • getFields

        public java.lang.Iterable<Field> getFields()
        Returns an iterable of Field in the document
      • getFacets

        public java.lang.Iterable<Facet> getFacets()
        Returns an iterable of Facet in the document
      • getFieldNames

        public java.util.Set<java.lang.String> getFieldNames()
        Returns an unmodifiable Set of the field names in the document
      • getFacetNames

        public java.util.Set<java.lang.String> getFacetNames()
        Returns an unmodifiable Set of the facet names in the document
      • getFields

        public java.lang.Iterable<Field> getFields(java.lang.String name)
        Returns an iterable of all fields with the given name.
        Parameters:
        name - the name of the field whose values are to be returned
        Returns:
        an unmodifiable Iterable of Field with the given name or null