com.google.appengine.api.search
Class Query.Builder
- java.lang.Object
-
- com.google.appengine.api.search.Query.Builder
-
- Enclosing class:
- Query
public static class Query.Builder extends java.lang.ObjectA builder which constructs Query objects.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description Query.BuilderaddFacetRefinement(FacetRefinement refinement)Adds a facet refinement.Query.BuilderaddFacetRefinementFromToken(java.lang.String token)Adds a facet refinement token.Query.BuilderaddReturnFacet(FacetRequest.Builder builder)Adds a facet request from a builder.Query.BuilderaddReturnFacet(FacetRequest facet)Requests a facet to be returned with search results.Query.BuilderaddReturnFacet(java.lang.String facetName)Adds a facet request by its name only.Querybuild()Construct the message.Querybuild(java.lang.String queryString)Build aQueryfrom the query string and the parameters set on theQuery.Builder.Query.BuildersetEnableFacetDiscovery(boolean value)Sets enable facet discovery flag.Query.BuildersetFacetOptions(FacetOptions.Builder builder)Sets the facet options from a builder.Query.BuildersetFacetOptions(FacetOptions options)Sets the facet options.Query.BuildersetOptions(QueryOptions.Builder optionsBuilder)Sets the query options from a builder.Query.BuildersetOptions(QueryOptions options)Sets the query options.
-
-
-
Method Detail
-
setOptions
public Query.Builder setOptions(QueryOptions options)
Sets the query options.- Parameters:
options- theQueryOptionsto apply to the search results- Returns:
- this builder
-
setOptions
public Query.Builder setOptions(QueryOptions.Builder optionsBuilder)
Sets the query options from a builder.- Parameters:
optionsBuilder- theQueryOptions.Builderbuild aQueryOptionsto apply to the search results- Returns:
- this builder
-
setFacetOptions
public Query.Builder setFacetOptions(FacetOptions options)
Sets the facet options.- Parameters:
options- theFacetOptionsto apply to the facet results- Returns:
- this builder
-
setFacetOptions
public Query.Builder setFacetOptions(FacetOptions.Builder builder)
Sets the facet options from a builder.- Parameters:
builder- theFacetOptions.Builderbuild aFacetOptionsto apply to the facet results- Returns:
- this builder
-
setEnableFacetDiscovery
public Query.Builder setEnableFacetDiscovery(boolean value)
Sets enable facet discovery flag.- Returns:
- this builder
-
addReturnFacet
public Query.Builder addReturnFacet(FacetRequest facet)
Requests a facet to be returned with search results. The facet will be included in the result regardless of the number of values it has.- Parameters:
facet- theFacetRequestto be added to return facets.- Returns:
- this builder
-
addFacetRefinementFromToken
public Query.Builder addFacetRefinementFromToken(java.lang.String token)
Adds a facet refinement token. The token is returned by each FacetResultValue. There will be disjunction between tokens for the same facet and conjunction between tokens for different facets. For example if the refinement tokens are (name=wine_type,value=red), (name=wine_type,value=white) and (name=year, Range(2000,2010)), the result will be refined according to:((wine_type is red) OR (wine_type is white)) AND (year in Range(2000,2010))
- Parameters:
token- the token returned byFacetResultValue.getRefinementToken()orFacetRefinement.toTokenString().- Returns:
- this builder
- Throws:
java.lang.IllegalArgumentException- if token is not valid.
-
addFacetRefinement
public Query.Builder addFacetRefinement(FacetRefinement refinement)
Adds a facet refinement. There will be disjunction between refinements for the same facet and conjunction between refinements for different facets. For example if the refinements are (name=wine_type,value=red), (name=wine_type,value=white) and (name=year, Range(2000,2010)), the result will be refined according to:((wine_type is red) OR (wine_type is white)) AND (year in Range.closedOpen(2000,2010))
- Parameters:
refinement- aFacetRefinementobject.- Returns:
- this builder
-
addReturnFacet
public Query.Builder addReturnFacet(FacetRequest.Builder builder)
Adds a facet request from a builder.- Parameters:
builder- theFacetRequest.Builderbuild aFacetRequestto be added to return facets.- Returns:
- this builder
-
addReturnFacet
public Query.Builder addReturnFacet(java.lang.String facetName)
Adds a facet request by its name only.- Parameters:
facetName- the name of the facet to be added to return facets.- Returns:
- this builder
-
build
public Query build(java.lang.String queryString)
Build aQueryfrom the query string and the parameters set on theQuery.Builder. A query string can be as simple as a single term ("foo"), or as complex as a boolean expression, including field names ("title:hello OR body:important -october").- Parameters:
queryString- the query string to parse and apply to an index- Returns:
- the Query built from the parameters entered on this Builder including the queryString
- Throws:
SearchQueryException- if the query string is invalid
-
build
public Query build()
Construct the message.- Returns:
- the Query built from the parameters entered on this Builder
- Throws:
java.lang.IllegalArgumentException- if the query string is invalid
-
-