Class SuggestionBuilder<T extends SuggestionBuilder<T>>

org.elasticsearch.search.suggest.SuggestionBuilder<T>
All Implemented Interfaces:
NamedWriteable, Writeable, org.elasticsearch.common.xcontent.ToXContent, org.elasticsearch.common.xcontent.ToXContentFragment
Direct Known Subclasses:
CompletionSuggestionBuilder, PhraseSuggestionBuilder, TermSuggestionBuilder

public abstract class SuggestionBuilder<T extends SuggestionBuilder<T>> extends implements NamedWriteable, org.elasticsearch.common.xcontent.ToXContentFragment
Base class for the different suggestion implementations.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent

    org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.Params

    Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable

    Writeable.Reader<V>, Writeable.Writer<V>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     
    protected
     
    protected static org.elasticsearch.common.xcontent.ParseField
     

    Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent

    EMPTY_PARAMS
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     field)
    Creates a new suggestion.
    protected
     field, SuggestionBuilder<?> in)
    internal copy constructor that copies over all class fields from second SuggestionBuilder except field name.
    protected
    Read from a stream.
  • Method Summary

    Modifier and Type
    Method
    Description
    get the analyzer() parameter
     analyzer)
    Sets the analyzer to analyse to suggest text with.
     
    protected abstract boolean
    doEquals​(T other)
    Indicates whether some other SuggestionBuilder of the same type is "equal to" this one.
    protected abstract int
    HashCode for the subclass of SuggestionBuilder to implement.
    protected abstract void
     
    boolean
     obj)
     
    get the field() parameter
    int
     
    protected abstract org.elasticsearch.common.xcontent.XContentBuilder
    innerToXContent​(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
     
    protected void
    Transfers the text, prefix, regex, analyzer, field, size and shard size settings from the original SuggestionBuilder to the target SuggestionSearchContext.SuggestionContext
    get the prefix for this suggestion
    protected T
     prefix)
     
    get the regex for this suggestion
    protected T
     regex)
     
    get the shardSize() parameter
     shardSize)
    Sets the maximum number of suggested term to be retrieved from each individual shard.
    get the size() parameter
    size​(int size)
    Sets the maximum suggestions to be returned per suggest text term.
    get the text for this suggestion
     text)
    Same as in SuggestBuilder.setGlobalText(String), but in the suggestion scope.
    org.elasticsearch.common.xcontent.XContentBuilder
    toXContent​(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
     
    void
    Write this into the StreamOutput.

    Methods inherited from class java.lang.

    , , , , , , , ,

    Methods inherited from interface org.elasticsearch.common.io.stream.NamedWriteable

    getWriteableName

    Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment

    isFragment
  • Field Details

    • field

      protected final  field
    • text

      protected  text
    • prefix

      protected  prefix
    • regex

      protected  regex
    • analyzer

      protected  analyzer
    • size

      protected  size
    • shardSize

      protected  shardSize
    • TEXT_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField TEXT_FIELD
    • PREFIX_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField PREFIX_FIELD
    • REGEX_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField REGEX_FIELD
    • FIELDNAME_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField FIELDNAME_FIELD
    • ANALYZER_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField ANALYZER_FIELD
    • SIZE_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField SIZE_FIELD
    • SHARDSIZE_FIELD

      protected static final org.elasticsearch.common.xcontent.ParseField SHARDSIZE_FIELD
  • Constructor Details

    • SuggestionBuilder

      protected SuggestionBuilder( field)
      Creates a new suggestion.
      Parameters:
      field - field to execute suggestions on
    • SuggestionBuilder

      protected SuggestionBuilder( field, SuggestionBuilder<?> in)
      internal copy constructor that copies over all class fields from second SuggestionBuilder except field name.
    • SuggestionBuilder

      protected SuggestionBuilder(StreamInput in) throws
      Read from a stream.
      Throws:
  • Method Details

    • writeTo

      public final void writeTo(StreamOutput out) throws
      Description copied from interface: Writeable
      Write this into the StreamOutput.
      Specified by:
      writeTo in interface Writeable
      Throws:
    • doWriteTo

      protected abstract void doWriteTo(StreamOutput out) throws
      Throws:
    • text

      public  text)
      Same as in SuggestBuilder.setGlobalText(String), but in the suggestion scope.
    • text

      public  text()
      get the text for this suggestion
    • prefix

      protected  prefix)
    • prefix

      public  prefix()
      get the prefix for this suggestion
    • regex

      protected  regex)
    • regex

      public  regex()
      get the regex for this suggestion
    • field

      public  field()
      get the field() parameter
    • analyzer

      public  analyzer)
      Sets the analyzer to analyse to suggest text with. Defaults to the search analyzer of the suggest field.
    • analyzer

      public  analyzer()
      get the analyzer() parameter
    • size

      public T size(int size)
      Sets the maximum suggestions to be returned per suggest text term.
    • size

      public  size()
      get the size() parameter
    • shardSize

      public  shardSize)
      Sets the maximum number of suggested term to be retrieved from each individual shard. During the reduce phase the only the top N suggestions are returned based on the size option. Defaults to the size option.

      Setting this to a value higher than the `size` can be useful in order to get a more accurate document frequency for suggested terms. Due to the fact that terms are partitioned amongst shards, the shard level document frequencies of suggestions may not be precise. Increasing this will make these document frequencies more precise.

    • shardSize

      public  shardSize()
      get the shardSize() parameter
    • toXContent

      public org.elasticsearch.common.xcontent.XContentBuilder toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws
      Specified by:
      toXContent in interface org.elasticsearch.common.xcontent.ToXContent
      Throws:
    • innerToXContent

      protected abstract org.elasticsearch.common.xcontent.XContentBuilder innerToXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws
      Throws:
    • build

      protected abstract SuggestionSearchContext.SuggestionContext build(SearchExecutionContext context) throws
      Throws:
    • populateCommonFields

      protected void populateCommonFields(SearchExecutionContext context, SuggestionSearchContext.SuggestionContext suggestionContext)
      Transfers the text, prefix, regex, analyzer, field, size and shard size settings from the original SuggestionBuilder to the target SuggestionSearchContext.SuggestionContext
    • equals

      public final boolean equals( obj)
      Overrides:
       in class 
    • doEquals

      protected abstract boolean doEquals(T other)
      Indicates whether some other SuggestionBuilder of the same type is "equal to" this one.
    • hashCode

      public final int hashCode()
      Overrides:
       in class 
    • doHashCode

      protected abstract int doHashCode()
      HashCode for the subclass of SuggestionBuilder to implement.