Package org.elasticsearch.search.suggest
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
Modifier and TypeFieldDescriptionprotected
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
ModifierConstructorDescriptionprotected
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 TypeMethodDescriptionanalyzer()
get theanalyzer()
parameteranalyzer)
Sets the analyzer to analyse to suggest text with.protected abstract SuggestionSearchContext.SuggestionContext
build(SearchExecutionContext context)
protected abstract boolean
Indicates whether some otherSuggestionBuilder
of the same type is "equal to" this one.protected abstract int
HashCode for the subclass ofSuggestionBuilder
to implement.protected abstract void
doWriteTo(StreamOutput out)
boolean
obj)
field()
get thefield()
parameterint
hashCode()
protected abstract org.elasticsearch.common.xcontent.XContentBuilder
innerToXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
protected void
populateCommonFields(SearchExecutionContext context, SuggestionSearchContext.SuggestionContext suggestionContext)
Transfers the text, prefix, regex, analyzer, field, size and shard size settings from the originalSuggestionBuilder
to the targetSuggestionSearchContext.SuggestionContext
prefix()
get the prefix for this suggestionprotected T
prefix)
regex()
get the regex for this suggestionprotected T
regex)
get theshardSize()
parametershardSize)
Sets the maximum number of suggested term to be retrieved from each individual shard.size()
get thesize()
parametersize(int size)
Sets the maximum suggestions to be returned per suggest text term.text()
get the text for this suggestiontext)
Same as inSuggestBuilder.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
writeTo(StreamOutput out)
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
internal copy constructor that copies over all class fields from second SuggestionBuilder except field name. -
SuggestionBuilder
Read from a stream.- Throws:
-
-
Method Details
-
writeTo
Description copied from interface:Writeable
Write this into the StreamOutput. -
doWriteTo
- Throws:
-
text
public text)Same as inSuggestBuilder.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 thefield()
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 theanalyzer()
parameter -
size
Sets the maximum suggestions to be returned per suggest text term. -
size
public size()get thesize()
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 thesize
option. Defaults to thesize
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 theshardSize()
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 interfaceorg.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 originalSuggestionBuilder
to the targetSuggestionSearchContext.SuggestionContext
-
equals
public final boolean equals( obj)- Overrides:
in class
-
doEquals
Indicates whether some otherSuggestionBuilder
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 ofSuggestionBuilder
to implement.
-