From fb86faa21120f6763d529a8b9bdc84f35283e1a5 Mon Sep 17 00:00:00 2001 From: algolia-bot Date: Thu, 19 Sep 2024 08:51:55 +0000 Subject: [PATCH] fix(specs): remove models from ingestion specs [skip-bc] (generated) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/algolia/api-clients-automation/pull/3774 Co-authored-by: algolia-bot Co-authored-by: Clément Vannicatte --- .../java/com/algolia/api/IngestionClient.java | 107 - .../GenerateTransformationCodePayload.java | 96 - .../GenerateTransformationCodeResponse.java | 62 - .../com/algolia/model/ingestion/Model.java | 128 -- .../model/ingestion/TransformationModels.java | 69 - .../model/recommend/BoughtTogetherQuery.java | 6 +- .../model/recommend/FacetOrdering.java | 6 +- .../model/recommend/FallbackParams.java | 680 +++++-- .../{Facets.java => IndexSettingsFacets.java} | 12 +- .../model/recommend/LookingSimilarQuery.java | 6 +- .../com/algolia/model/recommend/Mode.java | 43 - ...Params.java => RecommendSearchParams.java} | 992 ++++++---- .../recommend/RecommendedForYouQuery.java | 6 +- .../algolia/model/recommend/RelatedQuery.java | 6 +- .../model/recommend/SearchParamsObject.java | 1760 ----------------- .../model/recommend/SemanticSearch.java | 77 - .../model/recommend/TrendingFacetsQuery.java | 6 +- .../model/recommend/TrendingItemsQuery.java | 12 +- 18 files changed, 1194 insertions(+), 2880 deletions(-) delete mode 100644 algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodePayload.java delete mode 100644 algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodeResponse.java delete mode 100644 algoliasearch/src/main/java/com/algolia/model/ingestion/Model.java delete mode 100644 algoliasearch/src/main/java/com/algolia/model/ingestion/TransformationModels.java rename algoliasearch/src/main/java/com/algolia/model/recommend/{Facets.java => IndexSettingsFacets.java} (82%) delete mode 100644 algoliasearch/src/main/java/com/algolia/model/recommend/Mode.java rename algoliasearch/src/main/java/com/algolia/model/recommend/{SearchParams.java => RecommendSearchParams.java} (59%) delete mode 100644 algoliasearch/src/main/java/com/algolia/model/recommend/SearchParamsObject.java delete mode 100644 algoliasearch/src/main/java/com/algolia/model/recommend/SemanticSearch.java diff --git a/algoliasearch/src/main/java/com/algolia/api/IngestionClient.java b/algoliasearch/src/main/java/com/algolia/api/IngestionClient.java index 9a27a61b8..2a23432aa 100644 --- a/algoliasearch/src/main/java/com/algolia/api/IngestionClient.java +++ b/algoliasearch/src/main/java/com/algolia/api/IngestionClient.java @@ -1290,70 +1290,6 @@ public CompletableFuture enableTaskV1Async(@Nonnull String t return this.enableTaskV1Async(taskID, null); } - /** - * Generates code for the selected model based on the given prompt. - * - * @param generateTransformationCodePayload (required) - * @param requestOptions The requestOptions to send along with the query, they will be merged with - * the transporter requestOptions. - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public GenerateTransformationCodeResponse generateTransformationCode( - @Nonnull GenerateTransformationCodePayload generateTransformationCodePayload, - RequestOptions requestOptions - ) throws AlgoliaRuntimeException { - return LaunderThrowable.await(generateTransformationCodeAsync(generateTransformationCodePayload, requestOptions)); - } - - /** - * Generates code for the selected model based on the given prompt. - * - * @param generateTransformationCodePayload (required) - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public GenerateTransformationCodeResponse generateTransformationCode( - @Nonnull GenerateTransformationCodePayload generateTransformationCodePayload - ) throws AlgoliaRuntimeException { - return this.generateTransformationCode(generateTransformationCodePayload, null); - } - - /** - * (asynchronously) Generates code for the selected model based on the given prompt. - * - * @param generateTransformationCodePayload (required) - * @param requestOptions The requestOptions to send along with the query, they will be merged with - * the transporter requestOptions. - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public CompletableFuture generateTransformationCodeAsync( - @Nonnull GenerateTransformationCodePayload generateTransformationCodePayload, - RequestOptions requestOptions - ) throws AlgoliaRuntimeException { - Parameters.requireNonNull( - generateTransformationCodePayload, - "Parameter `generateTransformationCodePayload` is required when calling" + " `generateTransformationCode`." - ); - - HttpRequest request = HttpRequest.builder() - .setPath("/1/transformations/models") - .setMethod("POST") - .setBody(generateTransformationCodePayload) - .build(); - return executeAsync(request, requestOptions, new TypeReference() {}); - } - - /** - * (asynchronously) Generates code for the selected model based on the given prompt. - * - * @param generateTransformationCodePayload (required) - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public CompletableFuture generateTransformationCodeAsync( - @Nonnull GenerateTransformationCodePayload generateTransformationCodePayload - ) throws AlgoliaRuntimeException { - return this.generateTransformationCodeAsync(generateTransformationCodePayload, null); - } - /** * Retrieves an authentication resource by its ID. * @@ -2903,49 +2839,6 @@ public CompletableFuture listTasksV1Async() throws AlgoliaR return this.listTasksV1Async(null, null, null, null, null, null, null, null, null, null); } - /** - * Retrieves a list of existing LLM transformation helpers. - * - * @param requestOptions The requestOptions to send along with the query, they will be merged with - * the transporter requestOptions. - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public TransformationModels listTransformationModels(RequestOptions requestOptions) throws AlgoliaRuntimeException { - return LaunderThrowable.await(listTransformationModelsAsync(requestOptions)); - } - - /** - * Retrieves a list of existing LLM transformation helpers. - * - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public TransformationModels listTransformationModels() throws AlgoliaRuntimeException { - return this.listTransformationModels(null); - } - - /** - * (asynchronously) Retrieves a list of existing LLM transformation helpers. - * - * @param requestOptions The requestOptions to send along with the query, they will be merged with - * the transporter requestOptions. - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public CompletableFuture listTransformationModelsAsync(RequestOptions requestOptions) - throws AlgoliaRuntimeException { - HttpRequest request = HttpRequest.builder().setPath("/1/transformations/models").setMethod("GET").build(); - - return executeAsync(request, requestOptions, new TypeReference() {}); - } - - /** - * (asynchronously) Retrieves a list of existing LLM transformation helpers. - * - * @throws AlgoliaRuntimeException If it fails to process the API call - */ - public CompletableFuture listTransformationModelsAsync() throws AlgoliaRuntimeException { - return this.listTransformationModelsAsync(null); - } - /** * Retrieves a list of transformations. * diff --git a/algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodePayload.java b/algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodePayload.java deleted file mode 100644 index 0c9e16aa8..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodePayload.java +++ /dev/null @@ -1,96 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.ingestion; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; -import java.util.Objects; - -/** GenerateTransformationCodePayload */ -public class GenerateTransformationCodePayload { - - @JsonProperty("id") - private String id; - - @JsonProperty("systemPrompt") - private String systemPrompt; - - @JsonProperty("userPrompt") - private String userPrompt; - - public GenerateTransformationCodePayload setId(String id) { - this.id = id; - return this; - } - - /** Get id */ - @javax.annotation.Nonnull - public String getId() { - return id; - } - - public GenerateTransformationCodePayload setSystemPrompt(String systemPrompt) { - this.systemPrompt = systemPrompt; - return this; - } - - /** Get systemPrompt */ - @javax.annotation.Nullable - public String getSystemPrompt() { - return systemPrompt; - } - - public GenerateTransformationCodePayload setUserPrompt(String userPrompt) { - this.userPrompt = userPrompt; - return this; - } - - /** Get userPrompt */ - @javax.annotation.Nonnull - public String getUserPrompt() { - return userPrompt; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - GenerateTransformationCodePayload generateTransformationCodePayload = (GenerateTransformationCodePayload) o; - return ( - Objects.equals(this.id, generateTransformationCodePayload.id) && - Objects.equals(this.systemPrompt, generateTransformationCodePayload.systemPrompt) && - Objects.equals(this.userPrompt, generateTransformationCodePayload.userPrompt) - ); - } - - @Override - public int hashCode() { - return Objects.hash(id, systemPrompt, userPrompt); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class GenerateTransformationCodePayload {\n"); - sb.append(" id: ").append(toIndentedString(id)).append("\n"); - sb.append(" systemPrompt: ").append(toIndentedString(systemPrompt)).append("\n"); - sb.append(" userPrompt: ").append(toIndentedString(userPrompt)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodeResponse.java b/algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodeResponse.java deleted file mode 100644 index 1a544cafa..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/ingestion/GenerateTransformationCodeResponse.java +++ /dev/null @@ -1,62 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.ingestion; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; -import java.util.Objects; - -/** GenerateTransformationCodeResponse */ -public class GenerateTransformationCodeResponse { - - @JsonProperty("generatedCode") - private String generatedCode; - - public GenerateTransformationCodeResponse setGeneratedCode(String generatedCode) { - this.generatedCode = generatedCode; - return this; - } - - /** Get generatedCode */ - @javax.annotation.Nullable - public String getGeneratedCode() { - return generatedCode; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - GenerateTransformationCodeResponse generateTransformationCodeResponse = (GenerateTransformationCodeResponse) o; - return Objects.equals(this.generatedCode, generateTransformationCodeResponse.generatedCode); - } - - @Override - public int hashCode() { - return Objects.hash(generatedCode); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class GenerateTransformationCodeResponse {\n"); - sb.append(" generatedCode: ").append(toIndentedString(generatedCode)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/ingestion/Model.java b/algoliasearch/src/main/java/com/algolia/model/ingestion/Model.java deleted file mode 100644 index 87c397b02..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/ingestion/Model.java +++ /dev/null @@ -1,128 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.ingestion; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; -import java.util.Objects; - -/** Model */ -public class Model { - - @JsonProperty("fullname") - private String fullname; - - @JsonProperty("modelName") - private String modelName; - - @JsonProperty("systemPrompt") - private String systemPrompt; - - @JsonProperty("id") - private String id; - - @JsonProperty("provider") - private String provider; - - public Model setFullname(String fullname) { - this.fullname = fullname; - return this; - } - - /** Get fullname */ - @javax.annotation.Nonnull - public String getFullname() { - return fullname; - } - - public Model setModelName(String modelName) { - this.modelName = modelName; - return this; - } - - /** Get modelName */ - @javax.annotation.Nonnull - public String getModelName() { - return modelName; - } - - public Model setSystemPrompt(String systemPrompt) { - this.systemPrompt = systemPrompt; - return this; - } - - /** Get systemPrompt */ - @javax.annotation.Nonnull - public String getSystemPrompt() { - return systemPrompt; - } - - public Model setId(String id) { - this.id = id; - return this; - } - - /** Get id */ - @javax.annotation.Nonnull - public String getId() { - return id; - } - - public Model setProvider(String provider) { - this.provider = provider; - return this; - } - - /** Get provider */ - @javax.annotation.Nonnull - public String getProvider() { - return provider; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Model model = (Model) o; - return ( - Objects.equals(this.fullname, model.fullname) && - Objects.equals(this.modelName, model.modelName) && - Objects.equals(this.systemPrompt, model.systemPrompt) && - Objects.equals(this.id, model.id) && - Objects.equals(this.provider, model.provider) - ); - } - - @Override - public int hashCode() { - return Objects.hash(fullname, modelName, systemPrompt, id, provider); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class Model {\n"); - sb.append(" fullname: ").append(toIndentedString(fullname)).append("\n"); - sb.append(" modelName: ").append(toIndentedString(modelName)).append("\n"); - sb.append(" systemPrompt: ").append(toIndentedString(systemPrompt)).append("\n"); - sb.append(" id: ").append(toIndentedString(id)).append("\n"); - sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/ingestion/TransformationModels.java b/algoliasearch/src/main/java/com/algolia/model/ingestion/TransformationModels.java deleted file mode 100644 index 384868dba..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/ingestion/TransformationModels.java +++ /dev/null @@ -1,69 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.ingestion; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; - -/** List of available AI models for transformation purposes. */ -public class TransformationModels { - - @JsonProperty("llms") - private List llms = new ArrayList<>(); - - public TransformationModels setLlms(List llms) { - this.llms = llms; - return this; - } - - public TransformationModels addLlms(Model llmsItem) { - this.llms.add(llmsItem); - return this; - } - - /** Get llms */ - @javax.annotation.Nonnull - public List getLlms() { - return llms; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - TransformationModels transformationModels = (TransformationModels) o; - return Objects.equals(this.llms, transformationModels.llms); - } - - @Override - public int hashCode() { - return Objects.hash(llms); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class TransformationModels {\n"); - sb.append(" llms: ").append(toIndentedString(llms)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/BoughtTogetherQuery.java b/algoliasearch/src/main/java/com/algolia/model/recommend/BoughtTogetherQuery.java index e83243061..7b8b65bfb 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/BoughtTogetherQuery.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/BoughtTogetherQuery.java @@ -21,7 +21,7 @@ public class BoughtTogetherQuery implements RecommendationsRequest { private Integer maxRecommendations; @JsonProperty("queryParameters") - private SearchParams queryParameters; + private RecommendSearchParams queryParameters; @JsonProperty("model") private FbtModel model; @@ -70,14 +70,14 @@ public Integer getMaxRecommendations() { return maxRecommendations; } - public BoughtTogetherQuery setQueryParameters(SearchParams queryParameters) { + public BoughtTogetherQuery setQueryParameters(RecommendSearchParams queryParameters) { this.queryParameters = queryParameters; return this; } /** Get queryParameters */ @javax.annotation.Nullable - public SearchParams getQueryParameters() { + public RecommendSearchParams getQueryParameters() { return queryParameters; } diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/FacetOrdering.java b/algoliasearch/src/main/java/com/algolia/model/recommend/FacetOrdering.java index aba09f64c..d45b1e32a 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/FacetOrdering.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/FacetOrdering.java @@ -13,19 +13,19 @@ public class FacetOrdering { @JsonProperty("facets") - private Facets facets; + private IndexSettingsFacets facets; @JsonProperty("values") private Map values; - public FacetOrdering setFacets(Facets facets) { + public FacetOrdering setFacets(IndexSettingsFacets facets) { this.facets = facets; return this; } /** Get facets */ @javax.annotation.Nullable - public Facets getFacets() { + public IndexSettingsFacets getFacets() { return facets; } diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/FallbackParams.java b/algoliasearch/src/main/java/com/algolia/model/recommend/FallbackParams.java index f67c82082..20055e806 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/FallbackParams.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/FallbackParams.java @@ -6,15 +6,14 @@ import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.annotation.*; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Objects; /** FallbackParams */ public class FallbackParams { - @JsonProperty("query") - private String query; - @JsonProperty("similarQuery") private String similarQuery; @@ -45,15 +44,6 @@ public class FallbackParams { @JsonProperty("facetingAfterDistinct") private Boolean facetingAfterDistinct; - @JsonProperty("page") - private Integer page; - - @JsonProperty("offset") - private Integer offset; - - @JsonProperty("length") - private Integer length; - @JsonProperty("aroundLatLng") private String aroundLatLng; @@ -108,15 +98,66 @@ public class FallbackParams { @JsonProperty("enableABTest") private Boolean enableABTest; + @JsonProperty("query") + private String query; + + @JsonProperty("attributesForFaceting") + private List attributesForFaceting; + + @JsonProperty("replicas") + private List replicas; + + @JsonProperty("paginationLimitedTo") + private Integer paginationLimitedTo; + + @JsonProperty("unretrievableAttributes") + private List unretrievableAttributes; + + @JsonProperty("disableTypoToleranceOnWords") + private List disableTypoToleranceOnWords; + + @JsonProperty("attributesToTransliterate") + private List attributesToTransliterate; + + @JsonProperty("camelCaseAttributes") + private List camelCaseAttributes; + + @JsonProperty("decompoundedAttributes") + private Object decompoundedAttributes; + + @JsonProperty("indexLanguages") + private List indexLanguages; + + @JsonProperty("disablePrefixOnAttributes") + private List disablePrefixOnAttributes; + + @JsonProperty("allowCompressionOfIntegerArray") + private Boolean allowCompressionOfIntegerArray; + + @JsonProperty("numericAttributesForFiltering") + private List numericAttributesForFiltering; + + @JsonProperty("separatorsToIndex") + private String separatorsToIndex; + + @JsonProperty("searchableAttributes") + private List searchableAttributes; + + @JsonProperty("userData") + private Object userData; + + @JsonProperty("customNormalization") + private Map> customNormalization; + + @JsonProperty("attributeForDistinct") + private String attributeForDistinct; + @JsonProperty("attributesToRetrieve") private List attributesToRetrieve; @JsonProperty("ranking") private List ranking; - @JsonProperty("customRanking") - private List customRanking; - @JsonProperty("relevancyStrictness") private Integer relevancyStrictness; @@ -138,9 +179,6 @@ public class FallbackParams { @JsonProperty("restrictHighlightAndSnippetArrays") private Boolean restrictHighlightAndSnippetArrays; - @JsonProperty("hitsPerPage") - private Integer hitsPerPage; - @JsonProperty("minWordSizefor1Typo") private Integer minWordSizefor1Typo; @@ -162,9 +200,6 @@ public class FallbackParams { @JsonProperty("removeStopWords") private RemoveStopWords removeStopWords; - @JsonProperty("keepDiacriticsOnCharacters") - private String keepDiacriticsOnCharacters; - @JsonProperty("queryLanguages") private List queryLanguages; @@ -183,12 +218,6 @@ public class FallbackParams { @JsonProperty("removeWordsIfNoResults") private RemoveWordsIfNoResults removeWordsIfNoResults; - @JsonProperty("mode") - private Mode mode; - - @JsonProperty("semanticSearch") - private SemanticSearch semanticSearch; - @JsonProperty("advancedSyntax") private Boolean advancedSyntax; @@ -240,17 +269,6 @@ public class FallbackParams { @JsonProperty("reRankingApplyFilter") private ReRankingApplyFilter reRankingApplyFilter; - public FallbackParams setQuery(String query) { - this.query = query; - return this; - } - - /** Search query. */ - @javax.annotation.Nullable - public String getQuery() { - return query; - } - public FallbackParams setSimilarQuery(String similarQuery) { this.similarQuery = similarQuery; return this; @@ -418,39 +436,6 @@ public Boolean getFacetingAfterDistinct() { return facetingAfterDistinct; } - public FallbackParams setPage(Integer page) { - this.page = page; - return this; - } - - /** Page of search results to retrieve. minimum: 0 */ - @javax.annotation.Nullable - public Integer getPage() { - return page; - } - - public FallbackParams setOffset(Integer offset) { - this.offset = offset; - return this; - } - - /** Position of the first hit to retrieve. */ - @javax.annotation.Nullable - public Integer getOffset() { - return offset; - } - - public FallbackParams setLength(Integer length) { - this.length = length; - return this; - } - - /** Number of hits to retrieve (used in combination with `offset`). minimum: 0 maximum: 1000 */ - @javax.annotation.Nullable - public Integer getLength() { - return length; - } - public FallbackParams setAroundLatLng(String aroundLatLng) { this.aroundLatLng = aroundLatLng; return this; @@ -735,6 +720,400 @@ public Boolean getEnableABTest() { return enableABTest; } + public FallbackParams setQuery(String query) { + this.query = query; + return this; + } + + /** Search query. */ + @javax.annotation.Nullable + public String getQuery() { + return query; + } + + public FallbackParams setAttributesForFaceting(List attributesForFaceting) { + this.attributesForFaceting = attributesForFaceting; + return this; + } + + public FallbackParams addAttributesForFaceting(String attributesForFacetingItem) { + if (this.attributesForFaceting == null) { + this.attributesForFaceting = new ArrayList<>(); + } + this.attributesForFaceting.add(attributesForFacetingItem); + return this; + } + + /** + * Attributes used for + * [faceting](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/). + * Facets are attributes that let you categorize search results. They can be used for filtering + * search results. By default, no attribute is used for faceting. Attribute names are + * case-sensitive. **Modifiers** - `filterOnly(\"ATTRIBUTE\")`. Allows using this attribute as a + * filter, but doesn't evalue the facet values. - `searchable(\"ATTRIBUTE\")`. Allows searching + * for facet values. - `afterDistinct(\"ATTRIBUTE\")`. Evaluates the facet count _after_ + * deduplication with `distinct`. This ensures accurate facet counts. You can apply this modifier + * to searchable facets: `afterDistinct(searchable(ATTRIBUTE))`. + */ + @javax.annotation.Nullable + public List getAttributesForFaceting() { + return attributesForFaceting; + } + + public FallbackParams setReplicas(List replicas) { + this.replicas = replicas; + return this; + } + + public FallbackParams addReplicas(String replicasItem) { + if (this.replicas == null) { + this.replicas = new ArrayList<>(); + } + this.replicas.add(replicasItem); + return this; + } + + /** + * Creates [replica + * indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/). + * Replicas are copies of a primary index with the same records but different settings, synonyms, + * or rules. If you want to offer a different ranking or sorting of your search results, you'll + * use replica indices. All index operations on a primary index are automatically forwarded to its + * replicas. To add a replica index, you must provide the complete set of replicas to this + * parameter. If you omit a replica from this list, the replica turns into a regular, standalone + * index that will no longer by synced with the primary index. **Modifier** - + * `virtual(\"REPLICA\")`. Create a virtual replica, Virtual replicas don't increase the number of + * records and are optimized for [Relevant + * sorting](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/relevant-sort/). + */ + @javax.annotation.Nullable + public List getReplicas() { + return replicas; + } + + public FallbackParams setPaginationLimitedTo(Integer paginationLimitedTo) { + this.paginationLimitedTo = paginationLimitedTo; + return this; + } + + /** + * Maximum number of search results that can be obtained through pagination. Higher pagination + * limits might slow down your search. For pagination limits above 1,000, the sorting of results + * beyond the 1,000th hit can't be guaranteed. maximum: 20000 + */ + @javax.annotation.Nullable + public Integer getPaginationLimitedTo() { + return paginationLimitedTo; + } + + public FallbackParams setUnretrievableAttributes(List unretrievableAttributes) { + this.unretrievableAttributes = unretrievableAttributes; + return this; + } + + public FallbackParams addUnretrievableAttributes(String unretrievableAttributesItem) { + if (this.unretrievableAttributes == null) { + this.unretrievableAttributes = new ArrayList<>(); + } + this.unretrievableAttributes.add(unretrievableAttributesItem); + return this; + } + + /** + * Attributes that can't be retrieved at query time. This can be useful if you want to use an + * attribute for ranking or to [restrict + * access](https://www.algolia.com/doc/guides/security/api-keys/how-to/user-restricted-access-to-data/), + * but don't want to include it in the search results. Attribute names are case-sensitive. + */ + @javax.annotation.Nullable + public List getUnretrievableAttributes() { + return unretrievableAttributes; + } + + public FallbackParams setDisableTypoToleranceOnWords(List disableTypoToleranceOnWords) { + this.disableTypoToleranceOnWords = disableTypoToleranceOnWords; + return this; + } + + public FallbackParams addDisableTypoToleranceOnWords(String disableTypoToleranceOnWordsItem) { + if (this.disableTypoToleranceOnWords == null) { + this.disableTypoToleranceOnWords = new ArrayList<>(); + } + this.disableTypoToleranceOnWords.add(disableTypoToleranceOnWordsItem); + return this; + } + + /** + * Words for which you want to turn off [typo + * tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). + * This also turns off [word splitting and + * concatenation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/splitting-and-concatenation/) + * for the specified words. + */ + @javax.annotation.Nullable + public List getDisableTypoToleranceOnWords() { + return disableTypoToleranceOnWords; + } + + public FallbackParams setAttributesToTransliterate(List attributesToTransliterate) { + this.attributesToTransliterate = attributesToTransliterate; + return this; + } + + public FallbackParams addAttributesToTransliterate(String attributesToTransliterateItem) { + if (this.attributesToTransliterate == null) { + this.attributesToTransliterate = new ArrayList<>(); + } + this.attributesToTransliterate.add(attributesToTransliterateItem); + return this; + } + + /** + * Attributes, for which you want to support [Japanese + * transliteration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#japanese-transliteration-and-type-ahead). + * Transliteration supports searching in any of the Japanese writing systems. To support + * transliteration, you must set the indexing language to Japanese. Attribute names are + * case-sensitive. + */ + @javax.annotation.Nullable + public List getAttributesToTransliterate() { + return attributesToTransliterate; + } + + public FallbackParams setCamelCaseAttributes(List camelCaseAttributes) { + this.camelCaseAttributes = camelCaseAttributes; + return this; + } + + public FallbackParams addCamelCaseAttributes(String camelCaseAttributesItem) { + if (this.camelCaseAttributes == null) { + this.camelCaseAttributes = new ArrayList<>(); + } + this.camelCaseAttributes.add(camelCaseAttributesItem); + return this; + } + + /** + * Attributes for which to split [camel case](https://wikipedia.org/wiki/Camel_case) words. + * Attribute names are case-sensitive. + */ + @javax.annotation.Nullable + public List getCamelCaseAttributes() { + return camelCaseAttributes; + } + + public FallbackParams setDecompoundedAttributes(Object decompoundedAttributes) { + this.decompoundedAttributes = decompoundedAttributes; + return this; + } + + /** + * Searchable attributes to which Algolia should apply [word + * segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-segmentation/) + * (decompounding). Attribute names are case-sensitive. Compound words are formed by combining two + * or more individual words, and are particularly prevalent in Germanic languages—for example, + * \"firefighter\". With decompounding, the individual components are indexed separately. You can + * specify different lists for different languages. Decompounding is supported for these + * languages: Dutch (`nl`), German (`de`), Finnish (`fi`), Danish (`da`), Swedish (`sv`), and + * Norwegian (`no`). Decompounding doesn't work for words with [non-spacing mark Unicode + * characters](https://www.charactercodes.net/category/non-spacing_mark). For example, + * `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308). + */ + @javax.annotation.Nullable + public Object getDecompoundedAttributes() { + return decompoundedAttributes; + } + + public FallbackParams setIndexLanguages(List indexLanguages) { + this.indexLanguages = indexLanguages; + return this; + } + + public FallbackParams addIndexLanguages(SupportedLanguage indexLanguagesItem) { + if (this.indexLanguages == null) { + this.indexLanguages = new ArrayList<>(); + } + this.indexLanguages.add(indexLanguagesItem); + return this; + } + + /** + * Languages for language-specific processing steps, such as word detection and dictionary + * settings. **You should always specify an indexing language.** If you don't specify an indexing + * language, the search engine uses all [supported + * languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), + * or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This + * can lead to unexpected search results. For more information, see [Language-specific + * configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/). + */ + @javax.annotation.Nullable + public List getIndexLanguages() { + return indexLanguages; + } + + public FallbackParams setDisablePrefixOnAttributes(List disablePrefixOnAttributes) { + this.disablePrefixOnAttributes = disablePrefixOnAttributes; + return this; + } + + public FallbackParams addDisablePrefixOnAttributes(String disablePrefixOnAttributesItem) { + if (this.disablePrefixOnAttributes == null) { + this.disablePrefixOnAttributes = new ArrayList<>(); + } + this.disablePrefixOnAttributes.add(disablePrefixOnAttributesItem); + return this; + } + + /** + * Searchable attributes for which you want to turn off [prefix + * matching](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/#adjusting-prefix-search). + * Attribute names are case-sensitive. + */ + @javax.annotation.Nullable + public List getDisablePrefixOnAttributes() { + return disablePrefixOnAttributes; + } + + public FallbackParams setAllowCompressionOfIntegerArray(Boolean allowCompressionOfIntegerArray) { + this.allowCompressionOfIntegerArray = allowCompressionOfIntegerArray; + return this; + } + + /** + * Whether arrays with exclusively non-negative integers should be compressed for better + * performance. If true, the compressed arrays may be reordered. + */ + @javax.annotation.Nullable + public Boolean getAllowCompressionOfIntegerArray() { + return allowCompressionOfIntegerArray; + } + + public FallbackParams setNumericAttributesForFiltering(List numericAttributesForFiltering) { + this.numericAttributesForFiltering = numericAttributesForFiltering; + return this; + } + + public FallbackParams addNumericAttributesForFiltering(String numericAttributesForFilteringItem) { + if (this.numericAttributesForFiltering == null) { + this.numericAttributesForFiltering = new ArrayList<>(); + } + this.numericAttributesForFiltering.add(numericAttributesForFilteringItem); + return this; + } + + /** + * Numeric attributes that can be used as [numerical + * filters](https://www.algolia.com/doc/guides/managing-results/rules/detecting-intent/how-to/applying-a-custom-filter-for-a-specific-query/#numerical-filters). + * Attribute names are case-sensitive. By default, all numeric attributes are available as + * numerical filters. For faster indexing, reduce the number of numeric attributes. If you want to + * turn off filtering for all numeric attributes, specifiy an attribute that doesn't exist in your + * index, such as `NO_NUMERIC_FILTERING`. **Modifier** - `equalOnly(\"ATTRIBUTE\")`. Support only + * filtering based on equality comparisons `=` and `!=`. + */ + @javax.annotation.Nullable + public List getNumericAttributesForFiltering() { + return numericAttributesForFiltering; + } + + public FallbackParams setSeparatorsToIndex(String separatorsToIndex) { + this.separatorsToIndex = separatorsToIndex; + return this; + } + + /** + * Controls which separators are indexed. Separators are all non-letter characters except spaces + * and currency characters, such as $€£¥. By default, separator characters aren't indexed. With + * `separatorsToIndex`, Algolia treats separator characters as separate words. For example, a + * search for `C#` would report two matches. + */ + @javax.annotation.Nullable + public String getSeparatorsToIndex() { + return separatorsToIndex; + } + + public FallbackParams setSearchableAttributes(List searchableAttributes) { + this.searchableAttributes = searchableAttributes; + return this; + } + + public FallbackParams addSearchableAttributes(String searchableAttributesItem) { + if (this.searchableAttributes == null) { + this.searchableAttributes = new ArrayList<>(); + } + this.searchableAttributes.add(searchableAttributesItem); + return this; + } + + /** + * Attributes used for searching. Attribute names are case-sensitive. By default, all attributes + * are searchable and the + * [Attribute](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#attribute) + * ranking criterion is turned off. With a non-empty list, Algolia only returns results with + * matches in the selected attributes. In addition, the Attribute ranking criterion is turned on: + * matches in attributes that are higher in the list of `searchableAttributes` rank first. To make + * matches in two attributes rank equally, include them in a comma-separated string, such as + * `\"title,alternate_title\"`. Attributes with the same priority are always unordered. For more + * information, see [Searchable + * attributes](https://www.algolia.com/doc/guides/sending-and-managing-data/prepare-your-data/how-to/setting-searchable-attributes/). + * **Modifier** - `unordered(\"ATTRIBUTE\")`. Ignore the position of a match within the attribute. + * Without modifier, matches at the beginning of an attribute rank higer than matches at the end. + */ + @javax.annotation.Nullable + public List getSearchableAttributes() { + return searchableAttributes; + } + + public FallbackParams setUserData(Object userData) { + this.userData = userData; + return this; + } + + /** An object with custom data. You can store up to 32kB as custom data. */ + @javax.annotation.Nullable + public Object getUserData() { + return userData; + } + + public FallbackParams setCustomNormalization(Map> customNormalization) { + this.customNormalization = customNormalization; + return this; + } + + public FallbackParams putCustomNormalization(String key, Map customNormalizationItem) { + if (this.customNormalization == null) { + this.customNormalization = new HashMap<>(); + } + this.customNormalization.put(key, customNormalizationItem); + return this; + } + + /** + * Characters and their normalized replacements. This overrides Algolia's default + * [normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/). + */ + @javax.annotation.Nullable + public Map> getCustomNormalization() { + return customNormalization; + } + + public FallbackParams setAttributeForDistinct(String attributeForDistinct) { + this.attributeForDistinct = attributeForDistinct; + return this; + } + + /** + * Attribute that should be used to establish groups of results. Attribute names are + * case-sensitive. All records with the same value for this attribute are considered a group. You + * can combine `attributeForDistinct` with the `distinct` search parameter to control how many + * items per group are included in the search results. If you want to use the same attribute also + * for faceting, use the `afterDistinct` modifier of the `attributesForFaceting` setting. This + * applies faceting _after_ deduplication, which will result in accurate facet counts. + */ + @javax.annotation.Nullable + public String getAttributeForDistinct() { + return attributeForDistinct; + } + public FallbackParams setAttributesToRetrieve(List attributesToRetrieve) { this.attributesToRetrieve = attributesToRetrieve; return this; @@ -792,36 +1171,6 @@ public List getRanking() { return ranking; } - public FallbackParams setCustomRanking(List customRanking) { - this.customRanking = customRanking; - return this; - } - - public FallbackParams addCustomRanking(String customRankingItem) { - if (this.customRanking == null) { - this.customRanking = new ArrayList<>(); - } - this.customRanking.add(customRankingItem); - return this; - } - - /** - * Attributes to use as [custom - * ranking](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/). - * Attribute names are case-sensitive. The custom ranking attributes decide which items are shown - * first if the other ranking criteria are equal. Records with missing values for your selected - * custom ranking attributes are always sorted last. Boolean attributes are sorted based on their - * alphabetical order. **Modifiers** - `asc(\"ATTRIBUTE\")`. Sort the index by the values of an - * attribute, in ascending order. - `desc(\"ATTRIBUTE\")`. Sort the index by the values of an - * attribute, in descending order. If you use two or more custom ranking attributes, [reduce the - * precision](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/how-to/controlling-custom-ranking-metrics-precision/) - * of your first attributes, or the other attributes will never be applied. - */ - @javax.annotation.Nullable - public List getCustomRanking() { - return customRanking; - } - public FallbackParams setRelevancyStrictness(Integer relevancyStrictness) { this.relevancyStrictness = relevancyStrictness; return this; @@ -937,17 +1286,6 @@ public Boolean getRestrictHighlightAndSnippetArrays() { return restrictHighlightAndSnippetArrays; } - public FallbackParams setHitsPerPage(Integer hitsPerPage) { - this.hitsPerPage = hitsPerPage; - return this; - } - - /** Number of hits per page. minimum: 1 maximum: 1000 */ - @javax.annotation.Nullable - public Integer getHitsPerPage() { - return hitsPerPage; - } - public FallbackParams setMinWordSizefor1Typo(Integer minWordSizefor1Typo) { this.minWordSizefor1Typo = minWordSizefor1Typo; return this; @@ -1054,21 +1392,6 @@ public RemoveStopWords getRemoveStopWords() { return removeStopWords; } - public FallbackParams setKeepDiacriticsOnCharacters(String keepDiacriticsOnCharacters) { - this.keepDiacriticsOnCharacters = keepDiacriticsOnCharacters; - return this; - } - - /** - * Characters for which diacritics should be preserved. By default, Algolia removes diacritics - * from letters. For example, `é` becomes `e`. If this causes issues in your search, you can - * specify characters that should keep their diacritics. - */ - @javax.annotation.Nullable - public String getKeepDiacriticsOnCharacters() { - return keepDiacriticsOnCharacters; - } - public FallbackParams setQueryLanguages(List queryLanguages) { this.queryLanguages = queryLanguages; return this; @@ -1164,28 +1487,6 @@ public RemoveWordsIfNoResults getRemoveWordsIfNoResults() { return removeWordsIfNoResults; } - public FallbackParams setMode(Mode mode) { - this.mode = mode; - return this; - } - - /** Get mode */ - @javax.annotation.Nullable - public Mode getMode() { - return mode; - } - - public FallbackParams setSemanticSearch(SemanticSearch semanticSearch) { - this.semanticSearch = semanticSearch; - return this; - } - - /** Get semanticSearch */ - @javax.annotation.Nullable - public SemanticSearch getSemanticSearch() { - return semanticSearch; - } - public FallbackParams setAdvancedSyntax(Boolean advancedSyntax) { this.advancedSyntax = advancedSyntax; return this; @@ -1500,7 +1801,6 @@ public boolean equals(Object o) { } FallbackParams fallbackParams = (FallbackParams) o; return ( - Objects.equals(this.query, fallbackParams.query) && Objects.equals(this.similarQuery, fallbackParams.similarQuery) && Objects.equals(this.filters, fallbackParams.filters) && Objects.equals(this.facetFilters, fallbackParams.facetFilters) && @@ -1511,9 +1811,6 @@ public boolean equals(Object o) { Objects.equals(this.restrictSearchableAttributes, fallbackParams.restrictSearchableAttributes) && Objects.equals(this.facets, fallbackParams.facets) && Objects.equals(this.facetingAfterDistinct, fallbackParams.facetingAfterDistinct) && - Objects.equals(this.page, fallbackParams.page) && - Objects.equals(this.offset, fallbackParams.offset) && - Objects.equals(this.length, fallbackParams.length) && Objects.equals(this.aroundLatLng, fallbackParams.aroundLatLng) && Objects.equals(this.aroundLatLngViaIP, fallbackParams.aroundLatLngViaIP) && Objects.equals(this.aroundRadius, fallbackParams.aroundRadius) && @@ -1532,9 +1829,26 @@ public boolean equals(Object o) { Objects.equals(this.analyticsTags, fallbackParams.analyticsTags) && Objects.equals(this.percentileComputation, fallbackParams.percentileComputation) && Objects.equals(this.enableABTest, fallbackParams.enableABTest) && + Objects.equals(this.query, fallbackParams.query) && + Objects.equals(this.attributesForFaceting, fallbackParams.attributesForFaceting) && + Objects.equals(this.replicas, fallbackParams.replicas) && + Objects.equals(this.paginationLimitedTo, fallbackParams.paginationLimitedTo) && + Objects.equals(this.unretrievableAttributes, fallbackParams.unretrievableAttributes) && + Objects.equals(this.disableTypoToleranceOnWords, fallbackParams.disableTypoToleranceOnWords) && + Objects.equals(this.attributesToTransliterate, fallbackParams.attributesToTransliterate) && + Objects.equals(this.camelCaseAttributes, fallbackParams.camelCaseAttributes) && + Objects.equals(this.decompoundedAttributes, fallbackParams.decompoundedAttributes) && + Objects.equals(this.indexLanguages, fallbackParams.indexLanguages) && + Objects.equals(this.disablePrefixOnAttributes, fallbackParams.disablePrefixOnAttributes) && + Objects.equals(this.allowCompressionOfIntegerArray, fallbackParams.allowCompressionOfIntegerArray) && + Objects.equals(this.numericAttributesForFiltering, fallbackParams.numericAttributesForFiltering) && + Objects.equals(this.separatorsToIndex, fallbackParams.separatorsToIndex) && + Objects.equals(this.searchableAttributes, fallbackParams.searchableAttributes) && + Objects.equals(this.userData, fallbackParams.userData) && + Objects.equals(this.customNormalization, fallbackParams.customNormalization) && + Objects.equals(this.attributeForDistinct, fallbackParams.attributeForDistinct) && Objects.equals(this.attributesToRetrieve, fallbackParams.attributesToRetrieve) && Objects.equals(this.ranking, fallbackParams.ranking) && - Objects.equals(this.customRanking, fallbackParams.customRanking) && Objects.equals(this.relevancyStrictness, fallbackParams.relevancyStrictness) && Objects.equals(this.attributesToHighlight, fallbackParams.attributesToHighlight) && Objects.equals(this.attributesToSnippet, fallbackParams.attributesToSnippet) && @@ -1542,7 +1856,6 @@ public boolean equals(Object o) { Objects.equals(this.highlightPostTag, fallbackParams.highlightPostTag) && Objects.equals(this.snippetEllipsisText, fallbackParams.snippetEllipsisText) && Objects.equals(this.restrictHighlightAndSnippetArrays, fallbackParams.restrictHighlightAndSnippetArrays) && - Objects.equals(this.hitsPerPage, fallbackParams.hitsPerPage) && Objects.equals(this.minWordSizefor1Typo, fallbackParams.minWordSizefor1Typo) && Objects.equals(this.minWordSizefor2Typos, fallbackParams.minWordSizefor2Typos) && Objects.equals(this.typoTolerance, fallbackParams.typoTolerance) && @@ -1550,15 +1863,12 @@ public boolean equals(Object o) { Objects.equals(this.disableTypoToleranceOnAttributes, fallbackParams.disableTypoToleranceOnAttributes) && Objects.equals(this.ignorePlurals, fallbackParams.ignorePlurals) && Objects.equals(this.removeStopWords, fallbackParams.removeStopWords) && - Objects.equals(this.keepDiacriticsOnCharacters, fallbackParams.keepDiacriticsOnCharacters) && Objects.equals(this.queryLanguages, fallbackParams.queryLanguages) && Objects.equals(this.decompoundQuery, fallbackParams.decompoundQuery) && Objects.equals(this.enableRules, fallbackParams.enableRules) && Objects.equals(this.enablePersonalization, fallbackParams.enablePersonalization) && Objects.equals(this.queryType, fallbackParams.queryType) && Objects.equals(this.removeWordsIfNoResults, fallbackParams.removeWordsIfNoResults) && - Objects.equals(this.mode, fallbackParams.mode) && - Objects.equals(this.semanticSearch, fallbackParams.semanticSearch) && Objects.equals(this.advancedSyntax, fallbackParams.advancedSyntax) && Objects.equals(this.optionalWords, fallbackParams.optionalWords) && Objects.equals(this.disableExactOnAttributes, fallbackParams.disableExactOnAttributes) && @@ -1582,7 +1892,6 @@ public boolean equals(Object o) { @Override public int hashCode() { return Objects.hash( - query, similarQuery, filters, facetFilters, @@ -1593,9 +1902,6 @@ public int hashCode() { restrictSearchableAttributes, facets, facetingAfterDistinct, - page, - offset, - length, aroundLatLng, aroundLatLngViaIP, aroundRadius, @@ -1614,9 +1920,26 @@ public int hashCode() { analyticsTags, percentileComputation, enableABTest, + query, + attributesForFaceting, + replicas, + paginationLimitedTo, + unretrievableAttributes, + disableTypoToleranceOnWords, + attributesToTransliterate, + camelCaseAttributes, + decompoundedAttributes, + indexLanguages, + disablePrefixOnAttributes, + allowCompressionOfIntegerArray, + numericAttributesForFiltering, + separatorsToIndex, + searchableAttributes, + userData, + customNormalization, + attributeForDistinct, attributesToRetrieve, ranking, - customRanking, relevancyStrictness, attributesToHighlight, attributesToSnippet, @@ -1624,7 +1947,6 @@ public int hashCode() { highlightPostTag, snippetEllipsisText, restrictHighlightAndSnippetArrays, - hitsPerPage, minWordSizefor1Typo, minWordSizefor2Typos, typoTolerance, @@ -1632,15 +1954,12 @@ public int hashCode() { disableTypoToleranceOnAttributes, ignorePlurals, removeStopWords, - keepDiacriticsOnCharacters, queryLanguages, decompoundQuery, enableRules, enablePersonalization, queryType, removeWordsIfNoResults, - mode, - semanticSearch, advancedSyntax, optionalWords, disableExactOnAttributes, @@ -1665,7 +1984,6 @@ public int hashCode() { public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class FallbackParams {\n"); - sb.append(" query: ").append(toIndentedString(query)).append("\n"); sb.append(" similarQuery: ").append(toIndentedString(similarQuery)).append("\n"); sb.append(" filters: ").append(toIndentedString(filters)).append("\n"); sb.append(" facetFilters: ").append(toIndentedString(facetFilters)).append("\n"); @@ -1676,9 +1994,6 @@ public String toString() { sb.append(" restrictSearchableAttributes: ").append(toIndentedString(restrictSearchableAttributes)).append("\n"); sb.append(" facets: ").append(toIndentedString(facets)).append("\n"); sb.append(" facetingAfterDistinct: ").append(toIndentedString(facetingAfterDistinct)).append("\n"); - sb.append(" page: ").append(toIndentedString(page)).append("\n"); - sb.append(" offset: ").append(toIndentedString(offset)).append("\n"); - sb.append(" length: ").append(toIndentedString(length)).append("\n"); sb.append(" aroundLatLng: ").append(toIndentedString(aroundLatLng)).append("\n"); sb.append(" aroundLatLngViaIP: ").append(toIndentedString(aroundLatLngViaIP)).append("\n"); sb.append(" aroundRadius: ").append(toIndentedString(aroundRadius)).append("\n"); @@ -1697,9 +2012,26 @@ public String toString() { sb.append(" analyticsTags: ").append(toIndentedString(analyticsTags)).append("\n"); sb.append(" percentileComputation: ").append(toIndentedString(percentileComputation)).append("\n"); sb.append(" enableABTest: ").append(toIndentedString(enableABTest)).append("\n"); + sb.append(" query: ").append(toIndentedString(query)).append("\n"); + sb.append(" attributesForFaceting: ").append(toIndentedString(attributesForFaceting)).append("\n"); + sb.append(" replicas: ").append(toIndentedString(replicas)).append("\n"); + sb.append(" paginationLimitedTo: ").append(toIndentedString(paginationLimitedTo)).append("\n"); + sb.append(" unretrievableAttributes: ").append(toIndentedString(unretrievableAttributes)).append("\n"); + sb.append(" disableTypoToleranceOnWords: ").append(toIndentedString(disableTypoToleranceOnWords)).append("\n"); + sb.append(" attributesToTransliterate: ").append(toIndentedString(attributesToTransliterate)).append("\n"); + sb.append(" camelCaseAttributes: ").append(toIndentedString(camelCaseAttributes)).append("\n"); + sb.append(" decompoundedAttributes: ").append(toIndentedString(decompoundedAttributes)).append("\n"); + sb.append(" indexLanguages: ").append(toIndentedString(indexLanguages)).append("\n"); + sb.append(" disablePrefixOnAttributes: ").append(toIndentedString(disablePrefixOnAttributes)).append("\n"); + sb.append(" allowCompressionOfIntegerArray: ").append(toIndentedString(allowCompressionOfIntegerArray)).append("\n"); + sb.append(" numericAttributesForFiltering: ").append(toIndentedString(numericAttributesForFiltering)).append("\n"); + sb.append(" separatorsToIndex: ").append(toIndentedString(separatorsToIndex)).append("\n"); + sb.append(" searchableAttributes: ").append(toIndentedString(searchableAttributes)).append("\n"); + sb.append(" userData: ").append(toIndentedString(userData)).append("\n"); + sb.append(" customNormalization: ").append(toIndentedString(customNormalization)).append("\n"); + sb.append(" attributeForDistinct: ").append(toIndentedString(attributeForDistinct)).append("\n"); sb.append(" attributesToRetrieve: ").append(toIndentedString(attributesToRetrieve)).append("\n"); sb.append(" ranking: ").append(toIndentedString(ranking)).append("\n"); - sb.append(" customRanking: ").append(toIndentedString(customRanking)).append("\n"); sb.append(" relevancyStrictness: ").append(toIndentedString(relevancyStrictness)).append("\n"); sb.append(" attributesToHighlight: ").append(toIndentedString(attributesToHighlight)).append("\n"); sb.append(" attributesToSnippet: ").append(toIndentedString(attributesToSnippet)).append("\n"); @@ -1707,7 +2039,6 @@ public String toString() { sb.append(" highlightPostTag: ").append(toIndentedString(highlightPostTag)).append("\n"); sb.append(" snippetEllipsisText: ").append(toIndentedString(snippetEllipsisText)).append("\n"); sb.append(" restrictHighlightAndSnippetArrays: ").append(toIndentedString(restrictHighlightAndSnippetArrays)).append("\n"); - sb.append(" hitsPerPage: ").append(toIndentedString(hitsPerPage)).append("\n"); sb.append(" minWordSizefor1Typo: ").append(toIndentedString(minWordSizefor1Typo)).append("\n"); sb.append(" minWordSizefor2Typos: ").append(toIndentedString(minWordSizefor2Typos)).append("\n"); sb.append(" typoTolerance: ").append(toIndentedString(typoTolerance)).append("\n"); @@ -1715,15 +2046,12 @@ public String toString() { sb.append(" disableTypoToleranceOnAttributes: ").append(toIndentedString(disableTypoToleranceOnAttributes)).append("\n"); sb.append(" ignorePlurals: ").append(toIndentedString(ignorePlurals)).append("\n"); sb.append(" removeStopWords: ").append(toIndentedString(removeStopWords)).append("\n"); - sb.append(" keepDiacriticsOnCharacters: ").append(toIndentedString(keepDiacriticsOnCharacters)).append("\n"); sb.append(" queryLanguages: ").append(toIndentedString(queryLanguages)).append("\n"); sb.append(" decompoundQuery: ").append(toIndentedString(decompoundQuery)).append("\n"); sb.append(" enableRules: ").append(toIndentedString(enableRules)).append("\n"); sb.append(" enablePersonalization: ").append(toIndentedString(enablePersonalization)).append("\n"); sb.append(" queryType: ").append(toIndentedString(queryType)).append("\n"); sb.append(" removeWordsIfNoResults: ").append(toIndentedString(removeWordsIfNoResults)).append("\n"); - sb.append(" mode: ").append(toIndentedString(mode)).append("\n"); - sb.append(" semanticSearch: ").append(toIndentedString(semanticSearch)).append("\n"); sb.append(" advancedSyntax: ").append(toIndentedString(advancedSyntax)).append("\n"); sb.append(" optionalWords: ").append(toIndentedString(optionalWords)).append("\n"); sb.append(" disableExactOnAttributes: ").append(toIndentedString(disableExactOnAttributes)).append("\n"); diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/Facets.java b/algoliasearch/src/main/java/com/algolia/model/recommend/IndexSettingsFacets.java similarity index 82% rename from algoliasearch/src/main/java/com/algolia/model/recommend/Facets.java rename to algoliasearch/src/main/java/com/algolia/model/recommend/IndexSettingsFacets.java index d9cd5c796..88407c382 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/Facets.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/IndexSettingsFacets.java @@ -10,17 +10,17 @@ import java.util.Objects; /** Order of facet names. */ -public class Facets { +public class IndexSettingsFacets { @JsonProperty("order") private List order; - public Facets setOrder(List order) { + public IndexSettingsFacets setOrder(List order) { this.order = order; return this; } - public Facets addOrder(String orderItem) { + public IndexSettingsFacets addOrder(String orderItem) { if (this.order == null) { this.order = new ArrayList<>(); } @@ -45,8 +45,8 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - Facets facets = (Facets) o; - return Objects.equals(this.order, facets.order); + IndexSettingsFacets indexSettingsFacets = (IndexSettingsFacets) o; + return Objects.equals(this.order, indexSettingsFacets.order); } @Override @@ -57,7 +57,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class Facets {\n"); + sb.append("class IndexSettingsFacets {\n"); sb.append(" order: ").append(toIndentedString(order)).append("\n"); sb.append("}"); return sb.toString(); diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/LookingSimilarQuery.java b/algoliasearch/src/main/java/com/algolia/model/recommend/LookingSimilarQuery.java index f7d3376b1..378bcb785 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/LookingSimilarQuery.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/LookingSimilarQuery.java @@ -21,7 +21,7 @@ public class LookingSimilarQuery implements RecommendationsRequest { private Integer maxRecommendations; @JsonProperty("queryParameters") - private SearchParams queryParameters; + private RecommendSearchParams queryParameters; @JsonProperty("model") private LookingSimilarModel model; @@ -73,14 +73,14 @@ public Integer getMaxRecommendations() { return maxRecommendations; } - public LookingSimilarQuery setQueryParameters(SearchParams queryParameters) { + public LookingSimilarQuery setQueryParameters(RecommendSearchParams queryParameters) { this.queryParameters = queryParameters; return this; } /** Get queryParameters */ @javax.annotation.Nullable - public SearchParams getQueryParameters() { + public RecommendSearchParams getQueryParameters() { return queryParameters; } diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/Mode.java b/algoliasearch/src/main/java/com/algolia/model/recommend/Mode.java deleted file mode 100644 index 7afe47786..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/Mode.java +++ /dev/null @@ -1,43 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.recommend; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; - -/** - * Search mode the index will use to query for results. This setting only applies to indices, for - * which Algolia enabled NeuralSearch for you. - */ -public enum Mode { - NEURAL_SEARCH("neuralSearch"), - - KEYWORD_SEARCH("keywordSearch"); - - private final String value; - - Mode(String value) { - this.value = value; - } - - @JsonValue - public String getValue() { - return value; - } - - @Override - public String toString() { - return String.valueOf(value); - } - - @JsonCreator - public static Mode fromValue(String value) { - for (Mode b : Mode.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/SearchParams.java b/algoliasearch/src/main/java/com/algolia/model/recommend/RecommendSearchParams.java similarity index 59% rename from algoliasearch/src/main/java/com/algolia/model/recommend/SearchParams.java rename to algoliasearch/src/main/java/com/algolia/model/recommend/RecommendSearchParams.java index e8ad8db4e..62069a2b9 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/SearchParams.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/RecommendSearchParams.java @@ -6,14 +6,13 @@ import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.annotation.*; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Objects; -/** SearchParams */ -public class SearchParams { - - @JsonProperty("query") - private String query; +/** Search parameters for filtering the recommendations. */ +public class RecommendSearchParams { @JsonProperty("similarQuery") private String similarQuery; @@ -45,15 +44,6 @@ public class SearchParams { @JsonProperty("facetingAfterDistinct") private Boolean facetingAfterDistinct; - @JsonProperty("page") - private Integer page; - - @JsonProperty("offset") - private Integer offset; - - @JsonProperty("length") - private Integer length; - @JsonProperty("aroundLatLng") private String aroundLatLng; @@ -108,15 +98,66 @@ public class SearchParams { @JsonProperty("enableABTest") private Boolean enableABTest; + @JsonProperty("query") + private String query; + + @JsonProperty("attributesForFaceting") + private List attributesForFaceting; + + @JsonProperty("replicas") + private List replicas; + + @JsonProperty("paginationLimitedTo") + private Integer paginationLimitedTo; + + @JsonProperty("unretrievableAttributes") + private List unretrievableAttributes; + + @JsonProperty("disableTypoToleranceOnWords") + private List disableTypoToleranceOnWords; + + @JsonProperty("attributesToTransliterate") + private List attributesToTransliterate; + + @JsonProperty("camelCaseAttributes") + private List camelCaseAttributes; + + @JsonProperty("decompoundedAttributes") + private Object decompoundedAttributes; + + @JsonProperty("indexLanguages") + private List indexLanguages; + + @JsonProperty("disablePrefixOnAttributes") + private List disablePrefixOnAttributes; + + @JsonProperty("allowCompressionOfIntegerArray") + private Boolean allowCompressionOfIntegerArray; + + @JsonProperty("numericAttributesForFiltering") + private List numericAttributesForFiltering; + + @JsonProperty("separatorsToIndex") + private String separatorsToIndex; + + @JsonProperty("searchableAttributes") + private List searchableAttributes; + + @JsonProperty("userData") + private Object userData; + + @JsonProperty("customNormalization") + private Map> customNormalization; + + @JsonProperty("attributeForDistinct") + private String attributeForDistinct; + @JsonProperty("attributesToRetrieve") private List attributesToRetrieve; @JsonProperty("ranking") private List ranking; - @JsonProperty("customRanking") - private List customRanking; - @JsonProperty("relevancyStrictness") private Integer relevancyStrictness; @@ -138,9 +179,6 @@ public class SearchParams { @JsonProperty("restrictHighlightAndSnippetArrays") private Boolean restrictHighlightAndSnippetArrays; - @JsonProperty("hitsPerPage") - private Integer hitsPerPage; - @JsonProperty("minWordSizefor1Typo") private Integer minWordSizefor1Typo; @@ -162,9 +200,6 @@ public class SearchParams { @JsonProperty("removeStopWords") private RemoveStopWords removeStopWords; - @JsonProperty("keepDiacriticsOnCharacters") - private String keepDiacriticsOnCharacters; - @JsonProperty("queryLanguages") private List queryLanguages; @@ -183,12 +218,6 @@ public class SearchParams { @JsonProperty("removeWordsIfNoResults") private RemoveWordsIfNoResults removeWordsIfNoResults; - @JsonProperty("mode") - private Mode mode; - - @JsonProperty("semanticSearch") - private SemanticSearch semanticSearch; - @JsonProperty("advancedSyntax") private Boolean advancedSyntax; @@ -240,18 +269,7 @@ public class SearchParams { @JsonProperty("reRankingApplyFilter") private ReRankingApplyFilter reRankingApplyFilter; - public SearchParams setQuery(String query) { - this.query = query; - return this; - } - - /** Search query. */ - @javax.annotation.Nullable - public String getQuery() { - return query; - } - - public SearchParams setSimilarQuery(String similarQuery) { + public RecommendSearchParams setSimilarQuery(String similarQuery) { this.similarQuery = similarQuery; return this; } @@ -269,7 +287,7 @@ public String getSimilarQuery() { return similarQuery; } - public SearchParams setFilters(String filters) { + public RecommendSearchParams setFilters(String filters) { this.filters = filters; return this; } @@ -296,7 +314,7 @@ public String getFilters() { return filters; } - public SearchParams setFacetFilters(FacetFilters facetFilters) { + public RecommendSearchParams setFacetFilters(FacetFilters facetFilters) { this.facetFilters = facetFilters; return this; } @@ -307,7 +325,7 @@ public FacetFilters getFacetFilters() { return facetFilters; } - public SearchParams setOptionalFilters(OptionalFilters optionalFilters) { + public RecommendSearchParams setOptionalFilters(OptionalFilters optionalFilters) { this.optionalFilters = optionalFilters; return this; } @@ -318,7 +336,7 @@ public OptionalFilters getOptionalFilters() { return optionalFilters; } - public SearchParams setNumericFilters(NumericFilters numericFilters) { + public RecommendSearchParams setNumericFilters(NumericFilters numericFilters) { this.numericFilters = numericFilters; return this; } @@ -329,7 +347,7 @@ public NumericFilters getNumericFilters() { return numericFilters; } - public SearchParams setTagFilters(TagFilters tagFilters) { + public RecommendSearchParams setTagFilters(TagFilters tagFilters) { this.tagFilters = tagFilters; return this; } @@ -340,7 +358,7 @@ public TagFilters getTagFilters() { return tagFilters; } - public SearchParams setSumOrFiltersScores(Boolean sumOrFiltersScores) { + public RecommendSearchParams setSumOrFiltersScores(Boolean sumOrFiltersScores) { this.sumOrFiltersScores = sumOrFiltersScores; return this; } @@ -355,12 +373,12 @@ public Boolean getSumOrFiltersScores() { return sumOrFiltersScores; } - public SearchParams setRestrictSearchableAttributes(List restrictSearchableAttributes) { + public RecommendSearchParams setRestrictSearchableAttributes(List restrictSearchableAttributes) { this.restrictSearchableAttributes = restrictSearchableAttributes; return this; } - public SearchParams addRestrictSearchableAttributes(String restrictSearchableAttributesItem) { + public RecommendSearchParams addRestrictSearchableAttributes(String restrictSearchableAttributesItem) { if (this.restrictSearchableAttributes == null) { this.restrictSearchableAttributes = new ArrayList<>(); } @@ -377,12 +395,12 @@ public List getRestrictSearchableAttributes() { return restrictSearchableAttributes; } - public SearchParams setFacets(List facets) { + public RecommendSearchParams setFacets(List facets) { this.facets = facets; return this; } - public SearchParams addFacets(String facetsItem) { + public RecommendSearchParams addFacets(String facetsItem) { if (this.facets == null) { this.facets = new ArrayList<>(); } @@ -401,7 +419,7 @@ public List getFacets() { return facets; } - public SearchParams setFacetingAfterDistinct(Boolean facetingAfterDistinct) { + public RecommendSearchParams setFacetingAfterDistinct(Boolean facetingAfterDistinct) { this.facetingAfterDistinct = facetingAfterDistinct; return this; } @@ -418,40 +436,7 @@ public Boolean getFacetingAfterDistinct() { return facetingAfterDistinct; } - public SearchParams setPage(Integer page) { - this.page = page; - return this; - } - - /** Page of search results to retrieve. minimum: 0 */ - @javax.annotation.Nullable - public Integer getPage() { - return page; - } - - public SearchParams setOffset(Integer offset) { - this.offset = offset; - return this; - } - - /** Position of the first hit to retrieve. */ - @javax.annotation.Nullable - public Integer getOffset() { - return offset; - } - - public SearchParams setLength(Integer length) { - this.length = length; - return this; - } - - /** Number of hits to retrieve (used in combination with `offset`). minimum: 0 maximum: 1000 */ - @javax.annotation.Nullable - public Integer getLength() { - return length; - } - - public SearchParams setAroundLatLng(String aroundLatLng) { + public RecommendSearchParams setAroundLatLng(String aroundLatLng) { this.aroundLatLng = aroundLatLng; return this; } @@ -467,7 +452,7 @@ public String getAroundLatLng() { return aroundLatLng; } - public SearchParams setAroundLatLngViaIP(Boolean aroundLatLngViaIP) { + public RecommendSearchParams setAroundLatLngViaIP(Boolean aroundLatLngViaIP) { this.aroundLatLngViaIP = aroundLatLngViaIP; return this; } @@ -478,7 +463,7 @@ public Boolean getAroundLatLngViaIP() { return aroundLatLngViaIP; } - public SearchParams setAroundRadius(AroundRadius aroundRadius) { + public RecommendSearchParams setAroundRadius(AroundRadius aroundRadius) { this.aroundRadius = aroundRadius; return this; } @@ -489,7 +474,7 @@ public AroundRadius getAroundRadius() { return aroundRadius; } - public SearchParams setAroundPrecision(AroundPrecision aroundPrecision) { + public RecommendSearchParams setAroundPrecision(AroundPrecision aroundPrecision) { this.aroundPrecision = aroundPrecision; return this; } @@ -500,7 +485,7 @@ public AroundPrecision getAroundPrecision() { return aroundPrecision; } - public SearchParams setMinimumAroundRadius(Integer minimumAroundRadius) { + public RecommendSearchParams setMinimumAroundRadius(Integer minimumAroundRadius) { this.minimumAroundRadius = minimumAroundRadius; return this; } @@ -514,12 +499,12 @@ public Integer getMinimumAroundRadius() { return minimumAroundRadius; } - public SearchParams setInsideBoundingBox(List> insideBoundingBox) { + public RecommendSearchParams setInsideBoundingBox(List> insideBoundingBox) { this.insideBoundingBox = insideBoundingBox; return this; } - public SearchParams addInsideBoundingBox(List insideBoundingBoxItem) { + public RecommendSearchParams addInsideBoundingBox(List insideBoundingBoxItem) { if (this.insideBoundingBox == null) { this.insideBoundingBox = new ArrayList<>(); } @@ -539,12 +524,12 @@ public List> getInsideBoundingBox() { return insideBoundingBox; } - public SearchParams setInsidePolygon(List> insidePolygon) { + public RecommendSearchParams setInsidePolygon(List> insidePolygon) { this.insidePolygon = insidePolygon; return this; } - public SearchParams addInsidePolygon(List insidePolygonItem) { + public RecommendSearchParams addInsidePolygon(List insidePolygonItem) { if (this.insidePolygon == null) { this.insidePolygon = new ArrayList<>(); } @@ -564,12 +549,12 @@ public List> getInsidePolygon() { return insidePolygon; } - public SearchParams setNaturalLanguages(List naturalLanguages) { + public RecommendSearchParams setNaturalLanguages(List naturalLanguages) { this.naturalLanguages = naturalLanguages; return this; } - public SearchParams addNaturalLanguages(SupportedLanguage naturalLanguagesItem) { + public RecommendSearchParams addNaturalLanguages(SupportedLanguage naturalLanguagesItem) { if (this.naturalLanguages == null) { this.naturalLanguages = new ArrayList<>(); } @@ -588,12 +573,12 @@ public List getNaturalLanguages() { return naturalLanguages; } - public SearchParams setRuleContexts(List ruleContexts) { + public RecommendSearchParams setRuleContexts(List ruleContexts) { this.ruleContexts = ruleContexts; return this; } - public SearchParams addRuleContexts(String ruleContextsItem) { + public RecommendSearchParams addRuleContexts(String ruleContextsItem) { if (this.ruleContexts == null) { this.ruleContexts = new ArrayList<>(); } @@ -611,7 +596,7 @@ public List getRuleContexts() { return ruleContexts; } - public SearchParams setPersonalizationImpact(Integer personalizationImpact) { + public RecommendSearchParams setPersonalizationImpact(Integer personalizationImpact) { this.personalizationImpact = personalizationImpact; return this; } @@ -628,7 +613,7 @@ public Integer getPersonalizationImpact() { return personalizationImpact; } - public SearchParams setUserToken(String userToken) { + public RecommendSearchParams setUserToken(String userToken) { this.userToken = userToken; return this; } @@ -643,7 +628,7 @@ public String getUserToken() { return userToken; } - public SearchParams setGetRankingInfo(Boolean getRankingInfo) { + public RecommendSearchParams setGetRankingInfo(Boolean getRankingInfo) { this.getRankingInfo = getRankingInfo; return this; } @@ -654,7 +639,7 @@ public Boolean getGetRankingInfo() { return getRankingInfo; } - public SearchParams setSynonyms(Boolean synonyms) { + public RecommendSearchParams setSynonyms(Boolean synonyms) { this.synonyms = synonyms; return this; } @@ -665,7 +650,7 @@ public Boolean getSynonyms() { return synonyms; } - public SearchParams setClickAnalytics(Boolean clickAnalytics) { + public RecommendSearchParams setClickAnalytics(Boolean clickAnalytics) { this.clickAnalytics = clickAnalytics; return this; } @@ -680,7 +665,7 @@ public Boolean getClickAnalytics() { return clickAnalytics; } - public SearchParams setAnalytics(Boolean analytics) { + public RecommendSearchParams setAnalytics(Boolean analytics) { this.analytics = analytics; return this; } @@ -691,12 +676,12 @@ public Boolean getAnalytics() { return analytics; } - public SearchParams setAnalyticsTags(List analyticsTags) { + public RecommendSearchParams setAnalyticsTags(List analyticsTags) { this.analyticsTags = analyticsTags; return this; } - public SearchParams addAnalyticsTags(String analyticsTagsItem) { + public RecommendSearchParams addAnalyticsTags(String analyticsTagsItem) { if (this.analyticsTags == null) { this.analyticsTags = new ArrayList<>(); } @@ -713,7 +698,7 @@ public List getAnalyticsTags() { return analyticsTags; } - public SearchParams setPercentileComputation(Boolean percentileComputation) { + public RecommendSearchParams setPercentileComputation(Boolean percentileComputation) { this.percentileComputation = percentileComputation; return this; } @@ -724,7 +709,7 @@ public Boolean getPercentileComputation() { return percentileComputation; } - public SearchParams setEnableABTest(Boolean enableABTest) { + public RecommendSearchParams setEnableABTest(Boolean enableABTest) { this.enableABTest = enableABTest; return this; } @@ -735,12 +720,406 @@ public Boolean getEnableABTest() { return enableABTest; } - public SearchParams setAttributesToRetrieve(List attributesToRetrieve) { + public RecommendSearchParams setQuery(String query) { + this.query = query; + return this; + } + + /** Search query. */ + @javax.annotation.Nullable + public String getQuery() { + return query; + } + + public RecommendSearchParams setAttributesForFaceting(List attributesForFaceting) { + this.attributesForFaceting = attributesForFaceting; + return this; + } + + public RecommendSearchParams addAttributesForFaceting(String attributesForFacetingItem) { + if (this.attributesForFaceting == null) { + this.attributesForFaceting = new ArrayList<>(); + } + this.attributesForFaceting.add(attributesForFacetingItem); + return this; + } + + /** + * Attributes used for + * [faceting](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/). + * Facets are attributes that let you categorize search results. They can be used for filtering + * search results. By default, no attribute is used for faceting. Attribute names are + * case-sensitive. **Modifiers** - `filterOnly(\"ATTRIBUTE\")`. Allows using this attribute as a + * filter, but doesn't evalue the facet values. - `searchable(\"ATTRIBUTE\")`. Allows searching + * for facet values. - `afterDistinct(\"ATTRIBUTE\")`. Evaluates the facet count _after_ + * deduplication with `distinct`. This ensures accurate facet counts. You can apply this modifier + * to searchable facets: `afterDistinct(searchable(ATTRIBUTE))`. + */ + @javax.annotation.Nullable + public List getAttributesForFaceting() { + return attributesForFaceting; + } + + public RecommendSearchParams setReplicas(List replicas) { + this.replicas = replicas; + return this; + } + + public RecommendSearchParams addReplicas(String replicasItem) { + if (this.replicas == null) { + this.replicas = new ArrayList<>(); + } + this.replicas.add(replicasItem); + return this; + } + + /** + * Creates [replica + * indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/). + * Replicas are copies of a primary index with the same records but different settings, synonyms, + * or rules. If you want to offer a different ranking or sorting of your search results, you'll + * use replica indices. All index operations on a primary index are automatically forwarded to its + * replicas. To add a replica index, you must provide the complete set of replicas to this + * parameter. If you omit a replica from this list, the replica turns into a regular, standalone + * index that will no longer by synced with the primary index. **Modifier** - + * `virtual(\"REPLICA\")`. Create a virtual replica, Virtual replicas don't increase the number of + * records and are optimized for [Relevant + * sorting](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/relevant-sort/). + */ + @javax.annotation.Nullable + public List getReplicas() { + return replicas; + } + + public RecommendSearchParams setPaginationLimitedTo(Integer paginationLimitedTo) { + this.paginationLimitedTo = paginationLimitedTo; + return this; + } + + /** + * Maximum number of search results that can be obtained through pagination. Higher pagination + * limits might slow down your search. For pagination limits above 1,000, the sorting of results + * beyond the 1,000th hit can't be guaranteed. maximum: 20000 + */ + @javax.annotation.Nullable + public Integer getPaginationLimitedTo() { + return paginationLimitedTo; + } + + public RecommendSearchParams setUnretrievableAttributes(List unretrievableAttributes) { + this.unretrievableAttributes = unretrievableAttributes; + return this; + } + + public RecommendSearchParams addUnretrievableAttributes(String unretrievableAttributesItem) { + if (this.unretrievableAttributes == null) { + this.unretrievableAttributes = new ArrayList<>(); + } + this.unretrievableAttributes.add(unretrievableAttributesItem); + return this; + } + + /** + * Attributes that can't be retrieved at query time. This can be useful if you want to use an + * attribute for ranking or to [restrict + * access](https://www.algolia.com/doc/guides/security/api-keys/how-to/user-restricted-access-to-data/), + * but don't want to include it in the search results. Attribute names are case-sensitive. + */ + @javax.annotation.Nullable + public List getUnretrievableAttributes() { + return unretrievableAttributes; + } + + public RecommendSearchParams setDisableTypoToleranceOnWords(List disableTypoToleranceOnWords) { + this.disableTypoToleranceOnWords = disableTypoToleranceOnWords; + return this; + } + + public RecommendSearchParams addDisableTypoToleranceOnWords(String disableTypoToleranceOnWordsItem) { + if (this.disableTypoToleranceOnWords == null) { + this.disableTypoToleranceOnWords = new ArrayList<>(); + } + this.disableTypoToleranceOnWords.add(disableTypoToleranceOnWordsItem); + return this; + } + + /** + * Words for which you want to turn off [typo + * tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). + * This also turns off [word splitting and + * concatenation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/splitting-and-concatenation/) + * for the specified words. + */ + @javax.annotation.Nullable + public List getDisableTypoToleranceOnWords() { + return disableTypoToleranceOnWords; + } + + public RecommendSearchParams setAttributesToTransliterate(List attributesToTransliterate) { + this.attributesToTransliterate = attributesToTransliterate; + return this; + } + + public RecommendSearchParams addAttributesToTransliterate(String attributesToTransliterateItem) { + if (this.attributesToTransliterate == null) { + this.attributesToTransliterate = new ArrayList<>(); + } + this.attributesToTransliterate.add(attributesToTransliterateItem); + return this; + } + + /** + * Attributes, for which you want to support [Japanese + * transliteration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#japanese-transliteration-and-type-ahead). + * Transliteration supports searching in any of the Japanese writing systems. To support + * transliteration, you must set the indexing language to Japanese. Attribute names are + * case-sensitive. + */ + @javax.annotation.Nullable + public List getAttributesToTransliterate() { + return attributesToTransliterate; + } + + public RecommendSearchParams setCamelCaseAttributes(List camelCaseAttributes) { + this.camelCaseAttributes = camelCaseAttributes; + return this; + } + + public RecommendSearchParams addCamelCaseAttributes(String camelCaseAttributesItem) { + if (this.camelCaseAttributes == null) { + this.camelCaseAttributes = new ArrayList<>(); + } + this.camelCaseAttributes.add(camelCaseAttributesItem); + return this; + } + + /** + * Attributes for which to split [camel case](https://wikipedia.org/wiki/Camel_case) words. + * Attribute names are case-sensitive. + */ + @javax.annotation.Nullable + public List getCamelCaseAttributes() { + return camelCaseAttributes; + } + + public RecommendSearchParams setDecompoundedAttributes(Object decompoundedAttributes) { + this.decompoundedAttributes = decompoundedAttributes; + return this; + } + + /** + * Searchable attributes to which Algolia should apply [word + * segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/how-to/customize-segmentation/) + * (decompounding). Attribute names are case-sensitive. Compound words are formed by combining two + * or more individual words, and are particularly prevalent in Germanic languages—for example, + * \"firefighter\". With decompounding, the individual components are indexed separately. You can + * specify different lists for different languages. Decompounding is supported for these + * languages: Dutch (`nl`), German (`de`), Finnish (`fi`), Danish (`da`), Swedish (`sv`), and + * Norwegian (`no`). Decompounding doesn't work for words with [non-spacing mark Unicode + * characters](https://www.charactercodes.net/category/non-spacing_mark). For example, + * `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308). + */ + @javax.annotation.Nullable + public Object getDecompoundedAttributes() { + return decompoundedAttributes; + } + + public RecommendSearchParams setIndexLanguages(List indexLanguages) { + this.indexLanguages = indexLanguages; + return this; + } + + public RecommendSearchParams addIndexLanguages(SupportedLanguage indexLanguagesItem) { + if (this.indexLanguages == null) { + this.indexLanguages = new ArrayList<>(); + } + this.indexLanguages.add(indexLanguagesItem); + return this; + } + + /** + * Languages for language-specific processing steps, such as word detection and dictionary + * settings. **You should always specify an indexing language.** If you don't specify an indexing + * language, the search engine uses all [supported + * languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), + * or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This + * can lead to unexpected search results. For more information, see [Language-specific + * configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/). + */ + @javax.annotation.Nullable + public List getIndexLanguages() { + return indexLanguages; + } + + public RecommendSearchParams setDisablePrefixOnAttributes(List disablePrefixOnAttributes) { + this.disablePrefixOnAttributes = disablePrefixOnAttributes; + return this; + } + + public RecommendSearchParams addDisablePrefixOnAttributes(String disablePrefixOnAttributesItem) { + if (this.disablePrefixOnAttributes == null) { + this.disablePrefixOnAttributes = new ArrayList<>(); + } + this.disablePrefixOnAttributes.add(disablePrefixOnAttributesItem); + return this; + } + + /** + * Searchable attributes for which you want to turn off [prefix + * matching](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/#adjusting-prefix-search). + * Attribute names are case-sensitive. + */ + @javax.annotation.Nullable + public List getDisablePrefixOnAttributes() { + return disablePrefixOnAttributes; + } + + public RecommendSearchParams setAllowCompressionOfIntegerArray(Boolean allowCompressionOfIntegerArray) { + this.allowCompressionOfIntegerArray = allowCompressionOfIntegerArray; + return this; + } + + /** + * Whether arrays with exclusively non-negative integers should be compressed for better + * performance. If true, the compressed arrays may be reordered. + */ + @javax.annotation.Nullable + public Boolean getAllowCompressionOfIntegerArray() { + return allowCompressionOfIntegerArray; + } + + public RecommendSearchParams setNumericAttributesForFiltering(List numericAttributesForFiltering) { + this.numericAttributesForFiltering = numericAttributesForFiltering; + return this; + } + + public RecommendSearchParams addNumericAttributesForFiltering(String numericAttributesForFilteringItem) { + if (this.numericAttributesForFiltering == null) { + this.numericAttributesForFiltering = new ArrayList<>(); + } + this.numericAttributesForFiltering.add(numericAttributesForFilteringItem); + return this; + } + + /** + * Numeric attributes that can be used as [numerical + * filters](https://www.algolia.com/doc/guides/managing-results/rules/detecting-intent/how-to/applying-a-custom-filter-for-a-specific-query/#numerical-filters). + * Attribute names are case-sensitive. By default, all numeric attributes are available as + * numerical filters. For faster indexing, reduce the number of numeric attributes. If you want to + * turn off filtering for all numeric attributes, specifiy an attribute that doesn't exist in your + * index, such as `NO_NUMERIC_FILTERING`. **Modifier** - `equalOnly(\"ATTRIBUTE\")`. Support only + * filtering based on equality comparisons `=` and `!=`. + */ + @javax.annotation.Nullable + public List getNumericAttributesForFiltering() { + return numericAttributesForFiltering; + } + + public RecommendSearchParams setSeparatorsToIndex(String separatorsToIndex) { + this.separatorsToIndex = separatorsToIndex; + return this; + } + + /** + * Controls which separators are indexed. Separators are all non-letter characters except spaces + * and currency characters, such as $€£¥. By default, separator characters aren't indexed. With + * `separatorsToIndex`, Algolia treats separator characters as separate words. For example, a + * search for `C#` would report two matches. + */ + @javax.annotation.Nullable + public String getSeparatorsToIndex() { + return separatorsToIndex; + } + + public RecommendSearchParams setSearchableAttributes(List searchableAttributes) { + this.searchableAttributes = searchableAttributes; + return this; + } + + public RecommendSearchParams addSearchableAttributes(String searchableAttributesItem) { + if (this.searchableAttributes == null) { + this.searchableAttributes = new ArrayList<>(); + } + this.searchableAttributes.add(searchableAttributesItem); + return this; + } + + /** + * Attributes used for searching. Attribute names are case-sensitive. By default, all attributes + * are searchable and the + * [Attribute](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#attribute) + * ranking criterion is turned off. With a non-empty list, Algolia only returns results with + * matches in the selected attributes. In addition, the Attribute ranking criterion is turned on: + * matches in attributes that are higher in the list of `searchableAttributes` rank first. To make + * matches in two attributes rank equally, include them in a comma-separated string, such as + * `\"title,alternate_title\"`. Attributes with the same priority are always unordered. For more + * information, see [Searchable + * attributes](https://www.algolia.com/doc/guides/sending-and-managing-data/prepare-your-data/how-to/setting-searchable-attributes/). + * **Modifier** - `unordered(\"ATTRIBUTE\")`. Ignore the position of a match within the attribute. + * Without modifier, matches at the beginning of an attribute rank higer than matches at the end. + */ + @javax.annotation.Nullable + public List getSearchableAttributes() { + return searchableAttributes; + } + + public RecommendSearchParams setUserData(Object userData) { + this.userData = userData; + return this; + } + + /** An object with custom data. You can store up to 32kB as custom data. */ + @javax.annotation.Nullable + public Object getUserData() { + return userData; + } + + public RecommendSearchParams setCustomNormalization(Map> customNormalization) { + this.customNormalization = customNormalization; + return this; + } + + public RecommendSearchParams putCustomNormalization(String key, Map customNormalizationItem) { + if (this.customNormalization == null) { + this.customNormalization = new HashMap<>(); + } + this.customNormalization.put(key, customNormalizationItem); + return this; + } + + /** + * Characters and their normalized replacements. This overrides Algolia's default + * [normalization](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/). + */ + @javax.annotation.Nullable + public Map> getCustomNormalization() { + return customNormalization; + } + + public RecommendSearchParams setAttributeForDistinct(String attributeForDistinct) { + this.attributeForDistinct = attributeForDistinct; + return this; + } + + /** + * Attribute that should be used to establish groups of results. Attribute names are + * case-sensitive. All records with the same value for this attribute are considered a group. You + * can combine `attributeForDistinct` with the `distinct` search parameter to control how many + * items per group are included in the search results. If you want to use the same attribute also + * for faceting, use the `afterDistinct` modifier of the `attributesForFaceting` setting. This + * applies faceting _after_ deduplication, which will result in accurate facet counts. + */ + @javax.annotation.Nullable + public String getAttributeForDistinct() { + return attributeForDistinct; + } + + public RecommendSearchParams setAttributesToRetrieve(List attributesToRetrieve) { this.attributesToRetrieve = attributesToRetrieve; return this; } - public SearchParams addAttributesToRetrieve(String attributesToRetrieveItem) { + public RecommendSearchParams addAttributesToRetrieve(String attributesToRetrieveItem) { if (this.attributesToRetrieve == null) { this.attributesToRetrieve = new ArrayList<>(); } @@ -761,12 +1140,12 @@ public List getAttributesToRetrieve() { return attributesToRetrieve; } - public SearchParams setRanking(List ranking) { + public RecommendSearchParams setRanking(List ranking) { this.ranking = ranking; return this; } - public SearchParams addRanking(String rankingItem) { + public RecommendSearchParams addRanking(String rankingItem) { if (this.ranking == null) { this.ranking = new ArrayList<>(); } @@ -792,37 +1171,7 @@ public List getRanking() { return ranking; } - public SearchParams setCustomRanking(List customRanking) { - this.customRanking = customRanking; - return this; - } - - public SearchParams addCustomRanking(String customRankingItem) { - if (this.customRanking == null) { - this.customRanking = new ArrayList<>(); - } - this.customRanking.add(customRankingItem); - return this; - } - - /** - * Attributes to use as [custom - * ranking](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/). - * Attribute names are case-sensitive. The custom ranking attributes decide which items are shown - * first if the other ranking criteria are equal. Records with missing values for your selected - * custom ranking attributes are always sorted last. Boolean attributes are sorted based on their - * alphabetical order. **Modifiers** - `asc(\"ATTRIBUTE\")`. Sort the index by the values of an - * attribute, in ascending order. - `desc(\"ATTRIBUTE\")`. Sort the index by the values of an - * attribute, in descending order. If you use two or more custom ranking attributes, [reduce the - * precision](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/how-to/controlling-custom-ranking-metrics-precision/) - * of your first attributes, or the other attributes will never be applied. - */ - @javax.annotation.Nullable - public List getCustomRanking() { - return customRanking; - } - - public SearchParams setRelevancyStrictness(Integer relevancyStrictness) { + public RecommendSearchParams setRelevancyStrictness(Integer relevancyStrictness) { this.relevancyStrictness = relevancyStrictness; return this; } @@ -838,12 +1187,12 @@ public Integer getRelevancyStrictness() { return relevancyStrictness; } - public SearchParams setAttributesToHighlight(List attributesToHighlight) { + public RecommendSearchParams setAttributesToHighlight(List attributesToHighlight) { this.attributesToHighlight = attributesToHighlight; return this; } - public SearchParams addAttributesToHighlight(String attributesToHighlightItem) { + public RecommendSearchParams addAttributesToHighlight(String attributesToHighlightItem) { if (this.attributesToHighlight == null) { this.attributesToHighlight = new ArrayList<>(); } @@ -865,12 +1214,12 @@ public List getAttributesToHighlight() { return attributesToHighlight; } - public SearchParams setAttributesToSnippet(List attributesToSnippet) { + public RecommendSearchParams setAttributesToSnippet(List attributesToSnippet) { this.attributesToSnippet = attributesToSnippet; return this; } - public SearchParams addAttributesToSnippet(String attributesToSnippetItem) { + public RecommendSearchParams addAttributesToSnippet(String attributesToSnippetItem) { if (this.attributesToSnippet == null) { this.attributesToSnippet = new ArrayList<>(); } @@ -890,7 +1239,7 @@ public List getAttributesToSnippet() { return attributesToSnippet; } - public SearchParams setHighlightPreTag(String highlightPreTag) { + public RecommendSearchParams setHighlightPreTag(String highlightPreTag) { this.highlightPreTag = highlightPreTag; return this; } @@ -901,7 +1250,7 @@ public String getHighlightPreTag() { return highlightPreTag; } - public SearchParams setHighlightPostTag(String highlightPostTag) { + public RecommendSearchParams setHighlightPostTag(String highlightPostTag) { this.highlightPostTag = highlightPostTag; return this; } @@ -912,7 +1261,7 @@ public String getHighlightPostTag() { return highlightPostTag; } - public SearchParams setSnippetEllipsisText(String snippetEllipsisText) { + public RecommendSearchParams setSnippetEllipsisText(String snippetEllipsisText) { this.snippetEllipsisText = snippetEllipsisText; return this; } @@ -923,7 +1272,7 @@ public String getSnippetEllipsisText() { return snippetEllipsisText; } - public SearchParams setRestrictHighlightAndSnippetArrays(Boolean restrictHighlightAndSnippetArrays) { + public RecommendSearchParams setRestrictHighlightAndSnippetArrays(Boolean restrictHighlightAndSnippetArrays) { this.restrictHighlightAndSnippetArrays = restrictHighlightAndSnippetArrays; return this; } @@ -937,18 +1286,7 @@ public Boolean getRestrictHighlightAndSnippetArrays() { return restrictHighlightAndSnippetArrays; } - public SearchParams setHitsPerPage(Integer hitsPerPage) { - this.hitsPerPage = hitsPerPage; - return this; - } - - /** Number of hits per page. minimum: 1 maximum: 1000 */ - @javax.annotation.Nullable - public Integer getHitsPerPage() { - return hitsPerPage; - } - - public SearchParams setMinWordSizefor1Typo(Integer minWordSizefor1Typo) { + public RecommendSearchParams setMinWordSizefor1Typo(Integer minWordSizefor1Typo) { this.minWordSizefor1Typo = minWordSizefor1Typo; return this; } @@ -963,7 +1301,7 @@ public Integer getMinWordSizefor1Typo() { return minWordSizefor1Typo; } - public SearchParams setMinWordSizefor2Typos(Integer minWordSizefor2Typos) { + public RecommendSearchParams setMinWordSizefor2Typos(Integer minWordSizefor2Typos) { this.minWordSizefor2Typos = minWordSizefor2Typos; return this; } @@ -978,7 +1316,7 @@ public Integer getMinWordSizefor2Typos() { return minWordSizefor2Typos; } - public SearchParams setTypoTolerance(TypoTolerance typoTolerance) { + public RecommendSearchParams setTypoTolerance(TypoTolerance typoTolerance) { this.typoTolerance = typoTolerance; return this; } @@ -989,7 +1327,7 @@ public TypoTolerance getTypoTolerance() { return typoTolerance; } - public SearchParams setAllowTyposOnNumericTokens(Boolean allowTyposOnNumericTokens) { + public RecommendSearchParams setAllowTyposOnNumericTokens(Boolean allowTyposOnNumericTokens) { this.allowTyposOnNumericTokens = allowTyposOnNumericTokens; return this; } @@ -1003,12 +1341,12 @@ public Boolean getAllowTyposOnNumericTokens() { return allowTyposOnNumericTokens; } - public SearchParams setDisableTypoToleranceOnAttributes(List disableTypoToleranceOnAttributes) { + public RecommendSearchParams setDisableTypoToleranceOnAttributes(List disableTypoToleranceOnAttributes) { this.disableTypoToleranceOnAttributes = disableTypoToleranceOnAttributes; return this; } - public SearchParams addDisableTypoToleranceOnAttributes(String disableTypoToleranceOnAttributesItem) { + public RecommendSearchParams addDisableTypoToleranceOnAttributes(String disableTypoToleranceOnAttributesItem) { if (this.disableTypoToleranceOnAttributes == null) { this.disableTypoToleranceOnAttributes = new ArrayList<>(); } @@ -1032,7 +1370,7 @@ public List getDisableTypoToleranceOnAttributes() { return disableTypoToleranceOnAttributes; } - public SearchParams setIgnorePlurals(IgnorePlurals ignorePlurals) { + public RecommendSearchParams setIgnorePlurals(IgnorePlurals ignorePlurals) { this.ignorePlurals = ignorePlurals; return this; } @@ -1043,7 +1381,7 @@ public IgnorePlurals getIgnorePlurals() { return ignorePlurals; } - public SearchParams setRemoveStopWords(RemoveStopWords removeStopWords) { + public RecommendSearchParams setRemoveStopWords(RemoveStopWords removeStopWords) { this.removeStopWords = removeStopWords; return this; } @@ -1054,27 +1392,12 @@ public RemoveStopWords getRemoveStopWords() { return removeStopWords; } - public SearchParams setKeepDiacriticsOnCharacters(String keepDiacriticsOnCharacters) { - this.keepDiacriticsOnCharacters = keepDiacriticsOnCharacters; - return this; - } - - /** - * Characters for which diacritics should be preserved. By default, Algolia removes diacritics - * from letters. For example, `é` becomes `e`. If this causes issues in your search, you can - * specify characters that should keep their diacritics. - */ - @javax.annotation.Nullable - public String getKeepDiacriticsOnCharacters() { - return keepDiacriticsOnCharacters; - } - - public SearchParams setQueryLanguages(List queryLanguages) { + public RecommendSearchParams setQueryLanguages(List queryLanguages) { this.queryLanguages = queryLanguages; return this; } - public SearchParams addQueryLanguages(SupportedLanguage queryLanguagesItem) { + public RecommendSearchParams addQueryLanguages(SupportedLanguage queryLanguagesItem) { if (this.queryLanguages == null) { this.queryLanguages = new ArrayList<>(); } @@ -1101,7 +1424,7 @@ public List getQueryLanguages() { return queryLanguages; } - public SearchParams setDecompoundQuery(Boolean decompoundQuery) { + public RecommendSearchParams setDecompoundQuery(Boolean decompoundQuery) { this.decompoundQuery = decompoundQuery; return this; } @@ -1120,7 +1443,7 @@ public Boolean getDecompoundQuery() { return decompoundQuery; } - public SearchParams setEnableRules(Boolean enableRules) { + public RecommendSearchParams setEnableRules(Boolean enableRules) { this.enableRules = enableRules; return this; } @@ -1131,7 +1454,7 @@ public Boolean getEnableRules() { return enableRules; } - public SearchParams setEnablePersonalization(Boolean enablePersonalization) { + public RecommendSearchParams setEnablePersonalization(Boolean enablePersonalization) { this.enablePersonalization = enablePersonalization; return this; } @@ -1142,7 +1465,7 @@ public Boolean getEnablePersonalization() { return enablePersonalization; } - public SearchParams setQueryType(QueryType queryType) { + public RecommendSearchParams setQueryType(QueryType queryType) { this.queryType = queryType; return this; } @@ -1153,7 +1476,7 @@ public QueryType getQueryType() { return queryType; } - public SearchParams setRemoveWordsIfNoResults(RemoveWordsIfNoResults removeWordsIfNoResults) { + public RecommendSearchParams setRemoveWordsIfNoResults(RemoveWordsIfNoResults removeWordsIfNoResults) { this.removeWordsIfNoResults = removeWordsIfNoResults; return this; } @@ -1164,29 +1487,7 @@ public RemoveWordsIfNoResults getRemoveWordsIfNoResults() { return removeWordsIfNoResults; } - public SearchParams setMode(Mode mode) { - this.mode = mode; - return this; - } - - /** Get mode */ - @javax.annotation.Nullable - public Mode getMode() { - return mode; - } - - public SearchParams setSemanticSearch(SemanticSearch semanticSearch) { - this.semanticSearch = semanticSearch; - return this; - } - - /** Get semanticSearch */ - @javax.annotation.Nullable - public SemanticSearch getSemanticSearch() { - return semanticSearch; - } - - public SearchParams setAdvancedSyntax(Boolean advancedSyntax) { + public RecommendSearchParams setAdvancedSyntax(Boolean advancedSyntax) { this.advancedSyntax = advancedSyntax; return this; } @@ -1200,12 +1501,12 @@ public Boolean getAdvancedSyntax() { return advancedSyntax; } - public SearchParams setOptionalWords(List optionalWords) { + public RecommendSearchParams setOptionalWords(List optionalWords) { this.optionalWords = optionalWords; return this; } - public SearchParams addOptionalWords(String optionalWordsItem) { + public RecommendSearchParams addOptionalWords(String optionalWordsItem) { if (this.optionalWords == null) { this.optionalWords = new ArrayList<>(); } @@ -1235,12 +1536,12 @@ public List getOptionalWords() { return optionalWords; } - public SearchParams setDisableExactOnAttributes(List disableExactOnAttributes) { + public RecommendSearchParams setDisableExactOnAttributes(List disableExactOnAttributes) { this.disableExactOnAttributes = disableExactOnAttributes; return this; } - public SearchParams addDisableExactOnAttributes(String disableExactOnAttributesItem) { + public RecommendSearchParams addDisableExactOnAttributes(String disableExactOnAttributesItem) { if (this.disableExactOnAttributes == null) { this.disableExactOnAttributes = new ArrayList<>(); } @@ -1261,7 +1562,7 @@ public List getDisableExactOnAttributes() { return disableExactOnAttributes; } - public SearchParams setExactOnSingleWordQuery(ExactOnSingleWordQuery exactOnSingleWordQuery) { + public RecommendSearchParams setExactOnSingleWordQuery(ExactOnSingleWordQuery exactOnSingleWordQuery) { this.exactOnSingleWordQuery = exactOnSingleWordQuery; return this; } @@ -1272,12 +1573,12 @@ public ExactOnSingleWordQuery getExactOnSingleWordQuery() { return exactOnSingleWordQuery; } - public SearchParams setAlternativesAsExact(List alternativesAsExact) { + public RecommendSearchParams setAlternativesAsExact(List alternativesAsExact) { this.alternativesAsExact = alternativesAsExact; return this; } - public SearchParams addAlternativesAsExact(AlternativesAsExact alternativesAsExactItem) { + public RecommendSearchParams addAlternativesAsExact(AlternativesAsExact alternativesAsExactItem) { if (this.alternativesAsExact == null) { this.alternativesAsExact = new ArrayList<>(); } @@ -1297,12 +1598,12 @@ public List getAlternativesAsExact() { return alternativesAsExact; } - public SearchParams setAdvancedSyntaxFeatures(List advancedSyntaxFeatures) { + public RecommendSearchParams setAdvancedSyntaxFeatures(List advancedSyntaxFeatures) { this.advancedSyntaxFeatures = advancedSyntaxFeatures; return this; } - public SearchParams addAdvancedSyntaxFeatures(AdvancedSyntaxFeatures advancedSyntaxFeaturesItem) { + public RecommendSearchParams addAdvancedSyntaxFeatures(AdvancedSyntaxFeatures advancedSyntaxFeaturesItem) { if (this.advancedSyntaxFeatures == null) { this.advancedSyntaxFeatures = new ArrayList<>(); } @@ -1322,7 +1623,7 @@ public List getAdvancedSyntaxFeatures() { return advancedSyntaxFeatures; } - public SearchParams setDistinct(Distinct distinct) { + public RecommendSearchParams setDistinct(Distinct distinct) { this.distinct = distinct; return this; } @@ -1333,7 +1634,7 @@ public Distinct getDistinct() { return distinct; } - public SearchParams setReplaceSynonymsInHighlight(Boolean replaceSynonymsInHighlight) { + public RecommendSearchParams setReplaceSynonymsInHighlight(Boolean replaceSynonymsInHighlight) { this.replaceSynonymsInHighlight = replaceSynonymsInHighlight; return this; } @@ -1351,7 +1652,7 @@ public Boolean getReplaceSynonymsInHighlight() { return replaceSynonymsInHighlight; } - public SearchParams setMinProximity(Integer minProximity) { + public RecommendSearchParams setMinProximity(Integer minProximity) { this.minProximity = minProximity; return this; } @@ -1368,12 +1669,12 @@ public Integer getMinProximity() { return minProximity; } - public SearchParams setResponseFields(List responseFields) { + public RecommendSearchParams setResponseFields(List responseFields) { this.responseFields = responseFields; return this; } - public SearchParams addResponseFields(String responseFieldsItem) { + public RecommendSearchParams addResponseFields(String responseFieldsItem) { if (this.responseFields == null) { this.responseFields = new ArrayList<>(); } @@ -1393,7 +1694,7 @@ public List getResponseFields() { return responseFields; } - public SearchParams setMaxFacetHits(Integer maxFacetHits) { + public RecommendSearchParams setMaxFacetHits(Integer maxFacetHits) { this.maxFacetHits = maxFacetHits; return this; } @@ -1408,7 +1709,7 @@ public Integer getMaxFacetHits() { return maxFacetHits; } - public SearchParams setMaxValuesPerFacet(Integer maxValuesPerFacet) { + public RecommendSearchParams setMaxValuesPerFacet(Integer maxValuesPerFacet) { this.maxValuesPerFacet = maxValuesPerFacet; return this; } @@ -1419,7 +1720,7 @@ public Integer getMaxValuesPerFacet() { return maxValuesPerFacet; } - public SearchParams setSortFacetValuesBy(String sortFacetValuesBy) { + public RecommendSearchParams setSortFacetValuesBy(String sortFacetValuesBy) { this.sortFacetValuesBy = sortFacetValuesBy; return this; } @@ -1436,7 +1737,7 @@ public String getSortFacetValuesBy() { return sortFacetValuesBy; } - public SearchParams setAttributeCriteriaComputedByMinProximity(Boolean attributeCriteriaComputedByMinProximity) { + public RecommendSearchParams setAttributeCriteriaComputedByMinProximity(Boolean attributeCriteriaComputedByMinProximity) { this.attributeCriteriaComputedByMinProximity = attributeCriteriaComputedByMinProximity; return this; } @@ -1453,7 +1754,7 @@ public Boolean getAttributeCriteriaComputedByMinProximity() { return attributeCriteriaComputedByMinProximity; } - public SearchParams setRenderingContent(RenderingContent renderingContent) { + public RecommendSearchParams setRenderingContent(RenderingContent renderingContent) { this.renderingContent = renderingContent; return this; } @@ -1464,7 +1765,7 @@ public RenderingContent getRenderingContent() { return renderingContent; } - public SearchParams setEnableReRanking(Boolean enableReRanking) { + public RecommendSearchParams setEnableReRanking(Boolean enableReRanking) { this.enableReRanking = enableReRanking; return this; } @@ -1479,7 +1780,7 @@ public Boolean getEnableReRanking() { return enableReRanking; } - public SearchParams setReRankingApplyFilter(ReRankingApplyFilter reRankingApplyFilter) { + public RecommendSearchParams setReRankingApplyFilter(ReRankingApplyFilter reRankingApplyFilter) { this.reRankingApplyFilter = reRankingApplyFilter; return this; } @@ -1498,91 +1799,99 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - SearchParams searchParams = (SearchParams) o; + RecommendSearchParams recommendSearchParams = (RecommendSearchParams) o; return ( - Objects.equals(this.query, searchParams.query) && - Objects.equals(this.similarQuery, searchParams.similarQuery) && - Objects.equals(this.filters, searchParams.filters) && - Objects.equals(this.facetFilters, searchParams.facetFilters) && - Objects.equals(this.optionalFilters, searchParams.optionalFilters) && - Objects.equals(this.numericFilters, searchParams.numericFilters) && - Objects.equals(this.tagFilters, searchParams.tagFilters) && - Objects.equals(this.sumOrFiltersScores, searchParams.sumOrFiltersScores) && - Objects.equals(this.restrictSearchableAttributes, searchParams.restrictSearchableAttributes) && - Objects.equals(this.facets, searchParams.facets) && - Objects.equals(this.facetingAfterDistinct, searchParams.facetingAfterDistinct) && - Objects.equals(this.page, searchParams.page) && - Objects.equals(this.offset, searchParams.offset) && - Objects.equals(this.length, searchParams.length) && - Objects.equals(this.aroundLatLng, searchParams.aroundLatLng) && - Objects.equals(this.aroundLatLngViaIP, searchParams.aroundLatLngViaIP) && - Objects.equals(this.aroundRadius, searchParams.aroundRadius) && - Objects.equals(this.aroundPrecision, searchParams.aroundPrecision) && - Objects.equals(this.minimumAroundRadius, searchParams.minimumAroundRadius) && - Objects.equals(this.insideBoundingBox, searchParams.insideBoundingBox) && - Objects.equals(this.insidePolygon, searchParams.insidePolygon) && - Objects.equals(this.naturalLanguages, searchParams.naturalLanguages) && - Objects.equals(this.ruleContexts, searchParams.ruleContexts) && - Objects.equals(this.personalizationImpact, searchParams.personalizationImpact) && - Objects.equals(this.userToken, searchParams.userToken) && - Objects.equals(this.getRankingInfo, searchParams.getRankingInfo) && - Objects.equals(this.synonyms, searchParams.synonyms) && - Objects.equals(this.clickAnalytics, searchParams.clickAnalytics) && - Objects.equals(this.analytics, searchParams.analytics) && - Objects.equals(this.analyticsTags, searchParams.analyticsTags) && - Objects.equals(this.percentileComputation, searchParams.percentileComputation) && - Objects.equals(this.enableABTest, searchParams.enableABTest) && - Objects.equals(this.attributesToRetrieve, searchParams.attributesToRetrieve) && - Objects.equals(this.ranking, searchParams.ranking) && - Objects.equals(this.customRanking, searchParams.customRanking) && - Objects.equals(this.relevancyStrictness, searchParams.relevancyStrictness) && - Objects.equals(this.attributesToHighlight, searchParams.attributesToHighlight) && - Objects.equals(this.attributesToSnippet, searchParams.attributesToSnippet) && - Objects.equals(this.highlightPreTag, searchParams.highlightPreTag) && - Objects.equals(this.highlightPostTag, searchParams.highlightPostTag) && - Objects.equals(this.snippetEllipsisText, searchParams.snippetEllipsisText) && - Objects.equals(this.restrictHighlightAndSnippetArrays, searchParams.restrictHighlightAndSnippetArrays) && - Objects.equals(this.hitsPerPage, searchParams.hitsPerPage) && - Objects.equals(this.minWordSizefor1Typo, searchParams.minWordSizefor1Typo) && - Objects.equals(this.minWordSizefor2Typos, searchParams.minWordSizefor2Typos) && - Objects.equals(this.typoTolerance, searchParams.typoTolerance) && - Objects.equals(this.allowTyposOnNumericTokens, searchParams.allowTyposOnNumericTokens) && - Objects.equals(this.disableTypoToleranceOnAttributes, searchParams.disableTypoToleranceOnAttributes) && - Objects.equals(this.ignorePlurals, searchParams.ignorePlurals) && - Objects.equals(this.removeStopWords, searchParams.removeStopWords) && - Objects.equals(this.keepDiacriticsOnCharacters, searchParams.keepDiacriticsOnCharacters) && - Objects.equals(this.queryLanguages, searchParams.queryLanguages) && - Objects.equals(this.decompoundQuery, searchParams.decompoundQuery) && - Objects.equals(this.enableRules, searchParams.enableRules) && - Objects.equals(this.enablePersonalization, searchParams.enablePersonalization) && - Objects.equals(this.queryType, searchParams.queryType) && - Objects.equals(this.removeWordsIfNoResults, searchParams.removeWordsIfNoResults) && - Objects.equals(this.mode, searchParams.mode) && - Objects.equals(this.semanticSearch, searchParams.semanticSearch) && - Objects.equals(this.advancedSyntax, searchParams.advancedSyntax) && - Objects.equals(this.optionalWords, searchParams.optionalWords) && - Objects.equals(this.disableExactOnAttributes, searchParams.disableExactOnAttributes) && - Objects.equals(this.exactOnSingleWordQuery, searchParams.exactOnSingleWordQuery) && - Objects.equals(this.alternativesAsExact, searchParams.alternativesAsExact) && - Objects.equals(this.advancedSyntaxFeatures, searchParams.advancedSyntaxFeatures) && - Objects.equals(this.distinct, searchParams.distinct) && - Objects.equals(this.replaceSynonymsInHighlight, searchParams.replaceSynonymsInHighlight) && - Objects.equals(this.minProximity, searchParams.minProximity) && - Objects.equals(this.responseFields, searchParams.responseFields) && - Objects.equals(this.maxFacetHits, searchParams.maxFacetHits) && - Objects.equals(this.maxValuesPerFacet, searchParams.maxValuesPerFacet) && - Objects.equals(this.sortFacetValuesBy, searchParams.sortFacetValuesBy) && - Objects.equals(this.attributeCriteriaComputedByMinProximity, searchParams.attributeCriteriaComputedByMinProximity) && - Objects.equals(this.renderingContent, searchParams.renderingContent) && - Objects.equals(this.enableReRanking, searchParams.enableReRanking) && - Objects.equals(this.reRankingApplyFilter, searchParams.reRankingApplyFilter) + Objects.equals(this.similarQuery, recommendSearchParams.similarQuery) && + Objects.equals(this.filters, recommendSearchParams.filters) && + Objects.equals(this.facetFilters, recommendSearchParams.facetFilters) && + Objects.equals(this.optionalFilters, recommendSearchParams.optionalFilters) && + Objects.equals(this.numericFilters, recommendSearchParams.numericFilters) && + Objects.equals(this.tagFilters, recommendSearchParams.tagFilters) && + Objects.equals(this.sumOrFiltersScores, recommendSearchParams.sumOrFiltersScores) && + Objects.equals(this.restrictSearchableAttributes, recommendSearchParams.restrictSearchableAttributes) && + Objects.equals(this.facets, recommendSearchParams.facets) && + Objects.equals(this.facetingAfterDistinct, recommendSearchParams.facetingAfterDistinct) && + Objects.equals(this.aroundLatLng, recommendSearchParams.aroundLatLng) && + Objects.equals(this.aroundLatLngViaIP, recommendSearchParams.aroundLatLngViaIP) && + Objects.equals(this.aroundRadius, recommendSearchParams.aroundRadius) && + Objects.equals(this.aroundPrecision, recommendSearchParams.aroundPrecision) && + Objects.equals(this.minimumAroundRadius, recommendSearchParams.minimumAroundRadius) && + Objects.equals(this.insideBoundingBox, recommendSearchParams.insideBoundingBox) && + Objects.equals(this.insidePolygon, recommendSearchParams.insidePolygon) && + Objects.equals(this.naturalLanguages, recommendSearchParams.naturalLanguages) && + Objects.equals(this.ruleContexts, recommendSearchParams.ruleContexts) && + Objects.equals(this.personalizationImpact, recommendSearchParams.personalizationImpact) && + Objects.equals(this.userToken, recommendSearchParams.userToken) && + Objects.equals(this.getRankingInfo, recommendSearchParams.getRankingInfo) && + Objects.equals(this.synonyms, recommendSearchParams.synonyms) && + Objects.equals(this.clickAnalytics, recommendSearchParams.clickAnalytics) && + Objects.equals(this.analytics, recommendSearchParams.analytics) && + Objects.equals(this.analyticsTags, recommendSearchParams.analyticsTags) && + Objects.equals(this.percentileComputation, recommendSearchParams.percentileComputation) && + Objects.equals(this.enableABTest, recommendSearchParams.enableABTest) && + Objects.equals(this.query, recommendSearchParams.query) && + Objects.equals(this.attributesForFaceting, recommendSearchParams.attributesForFaceting) && + Objects.equals(this.replicas, recommendSearchParams.replicas) && + Objects.equals(this.paginationLimitedTo, recommendSearchParams.paginationLimitedTo) && + Objects.equals(this.unretrievableAttributes, recommendSearchParams.unretrievableAttributes) && + Objects.equals(this.disableTypoToleranceOnWords, recommendSearchParams.disableTypoToleranceOnWords) && + Objects.equals(this.attributesToTransliterate, recommendSearchParams.attributesToTransliterate) && + Objects.equals(this.camelCaseAttributes, recommendSearchParams.camelCaseAttributes) && + Objects.equals(this.decompoundedAttributes, recommendSearchParams.decompoundedAttributes) && + Objects.equals(this.indexLanguages, recommendSearchParams.indexLanguages) && + Objects.equals(this.disablePrefixOnAttributes, recommendSearchParams.disablePrefixOnAttributes) && + Objects.equals(this.allowCompressionOfIntegerArray, recommendSearchParams.allowCompressionOfIntegerArray) && + Objects.equals(this.numericAttributesForFiltering, recommendSearchParams.numericAttributesForFiltering) && + Objects.equals(this.separatorsToIndex, recommendSearchParams.separatorsToIndex) && + Objects.equals(this.searchableAttributes, recommendSearchParams.searchableAttributes) && + Objects.equals(this.userData, recommendSearchParams.userData) && + Objects.equals(this.customNormalization, recommendSearchParams.customNormalization) && + Objects.equals(this.attributeForDistinct, recommendSearchParams.attributeForDistinct) && + Objects.equals(this.attributesToRetrieve, recommendSearchParams.attributesToRetrieve) && + Objects.equals(this.ranking, recommendSearchParams.ranking) && + Objects.equals(this.relevancyStrictness, recommendSearchParams.relevancyStrictness) && + Objects.equals(this.attributesToHighlight, recommendSearchParams.attributesToHighlight) && + Objects.equals(this.attributesToSnippet, recommendSearchParams.attributesToSnippet) && + Objects.equals(this.highlightPreTag, recommendSearchParams.highlightPreTag) && + Objects.equals(this.highlightPostTag, recommendSearchParams.highlightPostTag) && + Objects.equals(this.snippetEllipsisText, recommendSearchParams.snippetEllipsisText) && + Objects.equals(this.restrictHighlightAndSnippetArrays, recommendSearchParams.restrictHighlightAndSnippetArrays) && + Objects.equals(this.minWordSizefor1Typo, recommendSearchParams.minWordSizefor1Typo) && + Objects.equals(this.minWordSizefor2Typos, recommendSearchParams.minWordSizefor2Typos) && + Objects.equals(this.typoTolerance, recommendSearchParams.typoTolerance) && + Objects.equals(this.allowTyposOnNumericTokens, recommendSearchParams.allowTyposOnNumericTokens) && + Objects.equals(this.disableTypoToleranceOnAttributes, recommendSearchParams.disableTypoToleranceOnAttributes) && + Objects.equals(this.ignorePlurals, recommendSearchParams.ignorePlurals) && + Objects.equals(this.removeStopWords, recommendSearchParams.removeStopWords) && + Objects.equals(this.queryLanguages, recommendSearchParams.queryLanguages) && + Objects.equals(this.decompoundQuery, recommendSearchParams.decompoundQuery) && + Objects.equals(this.enableRules, recommendSearchParams.enableRules) && + Objects.equals(this.enablePersonalization, recommendSearchParams.enablePersonalization) && + Objects.equals(this.queryType, recommendSearchParams.queryType) && + Objects.equals(this.removeWordsIfNoResults, recommendSearchParams.removeWordsIfNoResults) && + Objects.equals(this.advancedSyntax, recommendSearchParams.advancedSyntax) && + Objects.equals(this.optionalWords, recommendSearchParams.optionalWords) && + Objects.equals(this.disableExactOnAttributes, recommendSearchParams.disableExactOnAttributes) && + Objects.equals(this.exactOnSingleWordQuery, recommendSearchParams.exactOnSingleWordQuery) && + Objects.equals(this.alternativesAsExact, recommendSearchParams.alternativesAsExact) && + Objects.equals(this.advancedSyntaxFeatures, recommendSearchParams.advancedSyntaxFeatures) && + Objects.equals(this.distinct, recommendSearchParams.distinct) && + Objects.equals(this.replaceSynonymsInHighlight, recommendSearchParams.replaceSynonymsInHighlight) && + Objects.equals(this.minProximity, recommendSearchParams.minProximity) && + Objects.equals(this.responseFields, recommendSearchParams.responseFields) && + Objects.equals(this.maxFacetHits, recommendSearchParams.maxFacetHits) && + Objects.equals(this.maxValuesPerFacet, recommendSearchParams.maxValuesPerFacet) && + Objects.equals(this.sortFacetValuesBy, recommendSearchParams.sortFacetValuesBy) && + Objects.equals(this.attributeCriteriaComputedByMinProximity, recommendSearchParams.attributeCriteriaComputedByMinProximity) && + Objects.equals(this.renderingContent, recommendSearchParams.renderingContent) && + Objects.equals(this.enableReRanking, recommendSearchParams.enableReRanking) && + Objects.equals(this.reRankingApplyFilter, recommendSearchParams.reRankingApplyFilter) ); } @Override public int hashCode() { return Objects.hash( - query, similarQuery, filters, facetFilters, @@ -1593,9 +1902,6 @@ public int hashCode() { restrictSearchableAttributes, facets, facetingAfterDistinct, - page, - offset, - length, aroundLatLng, aroundLatLngViaIP, aroundRadius, @@ -1614,9 +1920,26 @@ public int hashCode() { analyticsTags, percentileComputation, enableABTest, + query, + attributesForFaceting, + replicas, + paginationLimitedTo, + unretrievableAttributes, + disableTypoToleranceOnWords, + attributesToTransliterate, + camelCaseAttributes, + decompoundedAttributes, + indexLanguages, + disablePrefixOnAttributes, + allowCompressionOfIntegerArray, + numericAttributesForFiltering, + separatorsToIndex, + searchableAttributes, + userData, + customNormalization, + attributeForDistinct, attributesToRetrieve, ranking, - customRanking, relevancyStrictness, attributesToHighlight, attributesToSnippet, @@ -1624,7 +1947,6 @@ public int hashCode() { highlightPostTag, snippetEllipsisText, restrictHighlightAndSnippetArrays, - hitsPerPage, minWordSizefor1Typo, minWordSizefor2Typos, typoTolerance, @@ -1632,15 +1954,12 @@ public int hashCode() { disableTypoToleranceOnAttributes, ignorePlurals, removeStopWords, - keepDiacriticsOnCharacters, queryLanguages, decompoundQuery, enableRules, enablePersonalization, queryType, removeWordsIfNoResults, - mode, - semanticSearch, advancedSyntax, optionalWords, disableExactOnAttributes, @@ -1664,8 +1983,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class SearchParams {\n"); - sb.append(" query: ").append(toIndentedString(query)).append("\n"); + sb.append("class RecommendSearchParams {\n"); sb.append(" similarQuery: ").append(toIndentedString(similarQuery)).append("\n"); sb.append(" filters: ").append(toIndentedString(filters)).append("\n"); sb.append(" facetFilters: ").append(toIndentedString(facetFilters)).append("\n"); @@ -1676,9 +1994,6 @@ public String toString() { sb.append(" restrictSearchableAttributes: ").append(toIndentedString(restrictSearchableAttributes)).append("\n"); sb.append(" facets: ").append(toIndentedString(facets)).append("\n"); sb.append(" facetingAfterDistinct: ").append(toIndentedString(facetingAfterDistinct)).append("\n"); - sb.append(" page: ").append(toIndentedString(page)).append("\n"); - sb.append(" offset: ").append(toIndentedString(offset)).append("\n"); - sb.append(" length: ").append(toIndentedString(length)).append("\n"); sb.append(" aroundLatLng: ").append(toIndentedString(aroundLatLng)).append("\n"); sb.append(" aroundLatLngViaIP: ").append(toIndentedString(aroundLatLngViaIP)).append("\n"); sb.append(" aroundRadius: ").append(toIndentedString(aroundRadius)).append("\n"); @@ -1697,9 +2012,26 @@ public String toString() { sb.append(" analyticsTags: ").append(toIndentedString(analyticsTags)).append("\n"); sb.append(" percentileComputation: ").append(toIndentedString(percentileComputation)).append("\n"); sb.append(" enableABTest: ").append(toIndentedString(enableABTest)).append("\n"); + sb.append(" query: ").append(toIndentedString(query)).append("\n"); + sb.append(" attributesForFaceting: ").append(toIndentedString(attributesForFaceting)).append("\n"); + sb.append(" replicas: ").append(toIndentedString(replicas)).append("\n"); + sb.append(" paginationLimitedTo: ").append(toIndentedString(paginationLimitedTo)).append("\n"); + sb.append(" unretrievableAttributes: ").append(toIndentedString(unretrievableAttributes)).append("\n"); + sb.append(" disableTypoToleranceOnWords: ").append(toIndentedString(disableTypoToleranceOnWords)).append("\n"); + sb.append(" attributesToTransliterate: ").append(toIndentedString(attributesToTransliterate)).append("\n"); + sb.append(" camelCaseAttributes: ").append(toIndentedString(camelCaseAttributes)).append("\n"); + sb.append(" decompoundedAttributes: ").append(toIndentedString(decompoundedAttributes)).append("\n"); + sb.append(" indexLanguages: ").append(toIndentedString(indexLanguages)).append("\n"); + sb.append(" disablePrefixOnAttributes: ").append(toIndentedString(disablePrefixOnAttributes)).append("\n"); + sb.append(" allowCompressionOfIntegerArray: ").append(toIndentedString(allowCompressionOfIntegerArray)).append("\n"); + sb.append(" numericAttributesForFiltering: ").append(toIndentedString(numericAttributesForFiltering)).append("\n"); + sb.append(" separatorsToIndex: ").append(toIndentedString(separatorsToIndex)).append("\n"); + sb.append(" searchableAttributes: ").append(toIndentedString(searchableAttributes)).append("\n"); + sb.append(" userData: ").append(toIndentedString(userData)).append("\n"); + sb.append(" customNormalization: ").append(toIndentedString(customNormalization)).append("\n"); + sb.append(" attributeForDistinct: ").append(toIndentedString(attributeForDistinct)).append("\n"); sb.append(" attributesToRetrieve: ").append(toIndentedString(attributesToRetrieve)).append("\n"); sb.append(" ranking: ").append(toIndentedString(ranking)).append("\n"); - sb.append(" customRanking: ").append(toIndentedString(customRanking)).append("\n"); sb.append(" relevancyStrictness: ").append(toIndentedString(relevancyStrictness)).append("\n"); sb.append(" attributesToHighlight: ").append(toIndentedString(attributesToHighlight)).append("\n"); sb.append(" attributesToSnippet: ").append(toIndentedString(attributesToSnippet)).append("\n"); @@ -1707,7 +2039,6 @@ public String toString() { sb.append(" highlightPostTag: ").append(toIndentedString(highlightPostTag)).append("\n"); sb.append(" snippetEllipsisText: ").append(toIndentedString(snippetEllipsisText)).append("\n"); sb.append(" restrictHighlightAndSnippetArrays: ").append(toIndentedString(restrictHighlightAndSnippetArrays)).append("\n"); - sb.append(" hitsPerPage: ").append(toIndentedString(hitsPerPage)).append("\n"); sb.append(" minWordSizefor1Typo: ").append(toIndentedString(minWordSizefor1Typo)).append("\n"); sb.append(" minWordSizefor2Typos: ").append(toIndentedString(minWordSizefor2Typos)).append("\n"); sb.append(" typoTolerance: ").append(toIndentedString(typoTolerance)).append("\n"); @@ -1715,15 +2046,12 @@ public String toString() { sb.append(" disableTypoToleranceOnAttributes: ").append(toIndentedString(disableTypoToleranceOnAttributes)).append("\n"); sb.append(" ignorePlurals: ").append(toIndentedString(ignorePlurals)).append("\n"); sb.append(" removeStopWords: ").append(toIndentedString(removeStopWords)).append("\n"); - sb.append(" keepDiacriticsOnCharacters: ").append(toIndentedString(keepDiacriticsOnCharacters)).append("\n"); sb.append(" queryLanguages: ").append(toIndentedString(queryLanguages)).append("\n"); sb.append(" decompoundQuery: ").append(toIndentedString(decompoundQuery)).append("\n"); sb.append(" enableRules: ").append(toIndentedString(enableRules)).append("\n"); sb.append(" enablePersonalization: ").append(toIndentedString(enablePersonalization)).append("\n"); sb.append(" queryType: ").append(toIndentedString(queryType)).append("\n"); sb.append(" removeWordsIfNoResults: ").append(toIndentedString(removeWordsIfNoResults)).append("\n"); - sb.append(" mode: ").append(toIndentedString(mode)).append("\n"); - sb.append(" semanticSearch: ").append(toIndentedString(semanticSearch)).append("\n"); sb.append(" advancedSyntax: ").append(toIndentedString(advancedSyntax)).append("\n"); sb.append(" optionalWords: ").append(toIndentedString(optionalWords)).append("\n"); sb.append(" disableExactOnAttributes: ").append(toIndentedString(disableExactOnAttributes)).append("\n"); diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/RecommendedForYouQuery.java b/algoliasearch/src/main/java/com/algolia/model/recommend/RecommendedForYouQuery.java index a94807915..47ab287c0 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/RecommendedForYouQuery.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/RecommendedForYouQuery.java @@ -21,7 +21,7 @@ public class RecommendedForYouQuery implements RecommendationsRequest { private Integer maxRecommendations; @JsonProperty("queryParameters") - private SearchParams queryParameters; + private RecommendSearchParams queryParameters; @JsonProperty("model") private RecommendedForYouModel model; @@ -70,14 +70,14 @@ public Integer getMaxRecommendations() { return maxRecommendations; } - public RecommendedForYouQuery setQueryParameters(SearchParams queryParameters) { + public RecommendedForYouQuery setQueryParameters(RecommendSearchParams queryParameters) { this.queryParameters = queryParameters; return this; } /** Get queryParameters */ @javax.annotation.Nullable - public SearchParams getQueryParameters() { + public RecommendSearchParams getQueryParameters() { return queryParameters; } diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/RelatedQuery.java b/algoliasearch/src/main/java/com/algolia/model/recommend/RelatedQuery.java index f34562cbc..70ece4e0d 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/RelatedQuery.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/RelatedQuery.java @@ -21,7 +21,7 @@ public class RelatedQuery implements RecommendationsRequest { private Integer maxRecommendations; @JsonProperty("queryParameters") - private SearchParams queryParameters; + private RecommendSearchParams queryParameters; @JsonProperty("model") private RelatedModel model; @@ -73,14 +73,14 @@ public Integer getMaxRecommendations() { return maxRecommendations; } - public RelatedQuery setQueryParameters(SearchParams queryParameters) { + public RelatedQuery setQueryParameters(RecommendSearchParams queryParameters) { this.queryParameters = queryParameters; return this; } /** Get queryParameters */ @javax.annotation.Nullable - public SearchParams getQueryParameters() { + public RecommendSearchParams getQueryParameters() { return queryParameters; } diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/SearchParamsObject.java b/algoliasearch/src/main/java/com/algolia/model/recommend/SearchParamsObject.java deleted file mode 100644 index 431211847..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/SearchParamsObject.java +++ /dev/null @@ -1,1760 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.recommend; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; - -/** Each parameter value, including the `query` must not be larger than 512 bytes. */ -public class SearchParamsObject { - - @JsonProperty("query") - private String query; - - @JsonProperty("similarQuery") - private String similarQuery; - - @JsonProperty("filters") - private String filters; - - @JsonProperty("facetFilters") - private FacetFilters facetFilters; - - @JsonProperty("optionalFilters") - private OptionalFilters optionalFilters; - - @JsonProperty("numericFilters") - private NumericFilters numericFilters; - - @JsonProperty("tagFilters") - private TagFilters tagFilters; - - @JsonProperty("sumOrFiltersScores") - private Boolean sumOrFiltersScores; - - @JsonProperty("restrictSearchableAttributes") - private List restrictSearchableAttributes; - - @JsonProperty("facets") - private List facets; - - @JsonProperty("facetingAfterDistinct") - private Boolean facetingAfterDistinct; - - @JsonProperty("page") - private Integer page; - - @JsonProperty("offset") - private Integer offset; - - @JsonProperty("length") - private Integer length; - - @JsonProperty("aroundLatLng") - private String aroundLatLng; - - @JsonProperty("aroundLatLngViaIP") - private Boolean aroundLatLngViaIP; - - @JsonProperty("aroundRadius") - private AroundRadius aroundRadius; - - @JsonProperty("aroundPrecision") - private AroundPrecision aroundPrecision; - - @JsonProperty("minimumAroundRadius") - private Integer minimumAroundRadius; - - @JsonProperty("insideBoundingBox") - private List> insideBoundingBox; - - @JsonProperty("insidePolygon") - private List> insidePolygon; - - @JsonProperty("naturalLanguages") - private List naturalLanguages; - - @JsonProperty("ruleContexts") - private List ruleContexts; - - @JsonProperty("personalizationImpact") - private Integer personalizationImpact; - - @JsonProperty("userToken") - private String userToken; - - @JsonProperty("getRankingInfo") - private Boolean getRankingInfo; - - @JsonProperty("synonyms") - private Boolean synonyms; - - @JsonProperty("clickAnalytics") - private Boolean clickAnalytics; - - @JsonProperty("analytics") - private Boolean analytics; - - @JsonProperty("analyticsTags") - private List analyticsTags; - - @JsonProperty("percentileComputation") - private Boolean percentileComputation; - - @JsonProperty("enableABTest") - private Boolean enableABTest; - - @JsonProperty("attributesToRetrieve") - private List attributesToRetrieve; - - @JsonProperty("ranking") - private List ranking; - - @JsonProperty("customRanking") - private List customRanking; - - @JsonProperty("relevancyStrictness") - private Integer relevancyStrictness; - - @JsonProperty("attributesToHighlight") - private List attributesToHighlight; - - @JsonProperty("attributesToSnippet") - private List attributesToSnippet; - - @JsonProperty("highlightPreTag") - private String highlightPreTag; - - @JsonProperty("highlightPostTag") - private String highlightPostTag; - - @JsonProperty("snippetEllipsisText") - private String snippetEllipsisText; - - @JsonProperty("restrictHighlightAndSnippetArrays") - private Boolean restrictHighlightAndSnippetArrays; - - @JsonProperty("hitsPerPage") - private Integer hitsPerPage; - - @JsonProperty("minWordSizefor1Typo") - private Integer minWordSizefor1Typo; - - @JsonProperty("minWordSizefor2Typos") - private Integer minWordSizefor2Typos; - - @JsonProperty("typoTolerance") - private TypoTolerance typoTolerance; - - @JsonProperty("allowTyposOnNumericTokens") - private Boolean allowTyposOnNumericTokens; - - @JsonProperty("disableTypoToleranceOnAttributes") - private List disableTypoToleranceOnAttributes; - - @JsonProperty("ignorePlurals") - private IgnorePlurals ignorePlurals; - - @JsonProperty("removeStopWords") - private RemoveStopWords removeStopWords; - - @JsonProperty("keepDiacriticsOnCharacters") - private String keepDiacriticsOnCharacters; - - @JsonProperty("queryLanguages") - private List queryLanguages; - - @JsonProperty("decompoundQuery") - private Boolean decompoundQuery; - - @JsonProperty("enableRules") - private Boolean enableRules; - - @JsonProperty("enablePersonalization") - private Boolean enablePersonalization; - - @JsonProperty("queryType") - private QueryType queryType; - - @JsonProperty("removeWordsIfNoResults") - private RemoveWordsIfNoResults removeWordsIfNoResults; - - @JsonProperty("mode") - private Mode mode; - - @JsonProperty("semanticSearch") - private SemanticSearch semanticSearch; - - @JsonProperty("advancedSyntax") - private Boolean advancedSyntax; - - @JsonProperty("optionalWords") - private List optionalWords; - - @JsonProperty("disableExactOnAttributes") - private List disableExactOnAttributes; - - @JsonProperty("exactOnSingleWordQuery") - private ExactOnSingleWordQuery exactOnSingleWordQuery; - - @JsonProperty("alternativesAsExact") - private List alternativesAsExact; - - @JsonProperty("advancedSyntaxFeatures") - private List advancedSyntaxFeatures; - - @JsonProperty("distinct") - private Distinct distinct; - - @JsonProperty("replaceSynonymsInHighlight") - private Boolean replaceSynonymsInHighlight; - - @JsonProperty("minProximity") - private Integer minProximity; - - @JsonProperty("responseFields") - private List responseFields; - - @JsonProperty("maxFacetHits") - private Integer maxFacetHits; - - @JsonProperty("maxValuesPerFacet") - private Integer maxValuesPerFacet; - - @JsonProperty("sortFacetValuesBy") - private String sortFacetValuesBy; - - @JsonProperty("attributeCriteriaComputedByMinProximity") - private Boolean attributeCriteriaComputedByMinProximity; - - @JsonProperty("renderingContent") - private RenderingContent renderingContent; - - @JsonProperty("enableReRanking") - private Boolean enableReRanking; - - @JsonProperty("reRankingApplyFilter") - private ReRankingApplyFilter reRankingApplyFilter; - - public SearchParamsObject setQuery(String query) { - this.query = query; - return this; - } - - /** Search query. */ - @javax.annotation.Nullable - public String getQuery() { - return query; - } - - public SearchParamsObject setSimilarQuery(String similarQuery) { - this.similarQuery = similarQuery; - return this; - } - - /** - * Keywords to be used instead of the search query to conduct a more broader search. Using the - * `similarQuery` parameter changes other settings: - `queryType` is set to `prefixNone`. - - * `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All - * remaining words are treated as `optionalWords`. Since the `similarQuery` is supposed to do a - * broad search, they usually return many results. Combine it with `filters` to narrow down the - * list of results. - */ - @javax.annotation.Nullable - public String getSimilarQuery() { - return similarQuery; - } - - public SearchParamsObject setFilters(String filters) { - this.filters = filters; - return this; - } - - /** - * Filter expression to only include items that match the filter criteria in the response. You can - * use these filter expressions: - **Numeric filters.** ` `, where `` is - * one of `<`, `<=`, `=`, `!=`, `>`, `>=`. - **Ranges.** `: TO ` where - * `` and `` are the lower and upper limits of the range (inclusive). - **Facet - * filters.** `:` where `` is a facet attribute (case-sensitive) and - * `` a facet value. - **Tag filters.** `_tags:` or just `` (case-sensitive). - * - **Boolean filters.** `: true | false`. You can combine filters with `AND`, `OR`, and - * `NOT` operators with the following restrictions: - You can only combine filters of the same - * type with `OR`. **Not supported:** `facet:value OR num > 3`. - You can't use `NOT` with - * combinations of filters. **Not supported:** `NOT(facet:value OR facet:value)` - You can't - * combine conjunctions (`AND`) with `OR`. **Not supported:** `facet:value OR (facet:value AND - * facet:value)` Use quotes around your filters, if the facet attribute name or facet value has - * spaces, keywords (`OR`, `AND`, `NOT`), or quotes. If a facet attribute is an array, the filter - * matches if it matches at least one element of the array. For more information, see - * [Filters](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/). - */ - @javax.annotation.Nullable - public String getFilters() { - return filters; - } - - public SearchParamsObject setFacetFilters(FacetFilters facetFilters) { - this.facetFilters = facetFilters; - return this; - } - - /** Get facetFilters */ - @javax.annotation.Nullable - public FacetFilters getFacetFilters() { - return facetFilters; - } - - public SearchParamsObject setOptionalFilters(OptionalFilters optionalFilters) { - this.optionalFilters = optionalFilters; - return this; - } - - /** Get optionalFilters */ - @javax.annotation.Nullable - public OptionalFilters getOptionalFilters() { - return optionalFilters; - } - - public SearchParamsObject setNumericFilters(NumericFilters numericFilters) { - this.numericFilters = numericFilters; - return this; - } - - /** Get numericFilters */ - @javax.annotation.Nullable - public NumericFilters getNumericFilters() { - return numericFilters; - } - - public SearchParamsObject setTagFilters(TagFilters tagFilters) { - this.tagFilters = tagFilters; - return this; - } - - /** Get tagFilters */ - @javax.annotation.Nullable - public TagFilters getTagFilters() { - return tagFilters; - } - - public SearchParamsObject setSumOrFiltersScores(Boolean sumOrFiltersScores) { - this.sumOrFiltersScores = sumOrFiltersScores; - return this; - } - - /** - * Whether to sum all filter scores. If true, all filter scores are summed. Otherwise, the maximum - * filter score is kept. For more information, see [filter - * scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores). - */ - @javax.annotation.Nullable - public Boolean getSumOrFiltersScores() { - return sumOrFiltersScores; - } - - public SearchParamsObject setRestrictSearchableAttributes(List restrictSearchableAttributes) { - this.restrictSearchableAttributes = restrictSearchableAttributes; - return this; - } - - public SearchParamsObject addRestrictSearchableAttributes(String restrictSearchableAttributesItem) { - if (this.restrictSearchableAttributes == null) { - this.restrictSearchableAttributes = new ArrayList<>(); - } - this.restrictSearchableAttributes.add(restrictSearchableAttributesItem); - return this; - } - - /** - * Restricts a search to a subset of your searchable attributes. Attribute names are - * case-sensitive. - */ - @javax.annotation.Nullable - public List getRestrictSearchableAttributes() { - return restrictSearchableAttributes; - } - - public SearchParamsObject setFacets(List facets) { - this.facets = facets; - return this; - } - - public SearchParamsObject addFacets(String facetsItem) { - if (this.facets == null) { - this.facets = new ArrayList<>(); - } - this.facets.add(facetsItem); - return this; - } - - /** - * Facets for which to retrieve facet values that match the search criteria and the number of - * matching facet values. To retrieve all facets, use the wildcard character `*`. For more - * information, see - * [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts). - */ - @javax.annotation.Nullable - public List getFacets() { - return facets; - } - - public SearchParamsObject setFacetingAfterDistinct(Boolean facetingAfterDistinct) { - this.facetingAfterDistinct = facetingAfterDistinct; - return this; - } - - /** - * Whether faceting should be applied after deduplication with `distinct`. This leads to accurate - * facet counts when using faceting in combination with `distinct`. It's usually better to use - * `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` - * only computes correct facet counts if all records have the same facet values for the - * `attributeForDistinct`. - */ - @javax.annotation.Nullable - public Boolean getFacetingAfterDistinct() { - return facetingAfterDistinct; - } - - public SearchParamsObject setPage(Integer page) { - this.page = page; - return this; - } - - /** Page of search results to retrieve. minimum: 0 */ - @javax.annotation.Nullable - public Integer getPage() { - return page; - } - - public SearchParamsObject setOffset(Integer offset) { - this.offset = offset; - return this; - } - - /** Position of the first hit to retrieve. */ - @javax.annotation.Nullable - public Integer getOffset() { - return offset; - } - - public SearchParamsObject setLength(Integer length) { - this.length = length; - return this; - } - - /** Number of hits to retrieve (used in combination with `offset`). minimum: 0 maximum: 1000 */ - @javax.annotation.Nullable - public Integer getLength() { - return length; - } - - public SearchParamsObject setAroundLatLng(String aroundLatLng) { - this.aroundLatLng = aroundLatLng; - return this; - } - - /** - * Coordinates for the center of a circle, expressed as a comma-separated string of latitude and - * longitude. Only records included within circle around this central location are included in the - * results. The radius of the circle is determined by the `aroundRadius` and `minimumAroundRadius` - * settings. This parameter is ignored if you also specify `insidePolygon` or `insideBoundingBox`. - */ - @javax.annotation.Nullable - public String getAroundLatLng() { - return aroundLatLng; - } - - public SearchParamsObject setAroundLatLngViaIP(Boolean aroundLatLngViaIP) { - this.aroundLatLngViaIP = aroundLatLngViaIP; - return this; - } - - /** Whether to obtain the coordinates from the request's IP address. */ - @javax.annotation.Nullable - public Boolean getAroundLatLngViaIP() { - return aroundLatLngViaIP; - } - - public SearchParamsObject setAroundRadius(AroundRadius aroundRadius) { - this.aroundRadius = aroundRadius; - return this; - } - - /** Get aroundRadius */ - @javax.annotation.Nullable - public AroundRadius getAroundRadius() { - return aroundRadius; - } - - public SearchParamsObject setAroundPrecision(AroundPrecision aroundPrecision) { - this.aroundPrecision = aroundPrecision; - return this; - } - - /** Get aroundPrecision */ - @javax.annotation.Nullable - public AroundPrecision getAroundPrecision() { - return aroundPrecision; - } - - public SearchParamsObject setMinimumAroundRadius(Integer minimumAroundRadius) { - this.minimumAroundRadius = minimumAroundRadius; - return this; - } - - /** - * Minimum radius (in meters) for a search around a location when `aroundRadius` isn't set. - * minimum: 1 - */ - @javax.annotation.Nullable - public Integer getMinimumAroundRadius() { - return minimumAroundRadius; - } - - public SearchParamsObject setInsideBoundingBox(List> insideBoundingBox) { - this.insideBoundingBox = insideBoundingBox; - return this; - } - - public SearchParamsObject addInsideBoundingBox(List insideBoundingBoxItem) { - if (this.insideBoundingBox == null) { - this.insideBoundingBox = new ArrayList<>(); - } - this.insideBoundingBox.add(insideBoundingBoxItem); - return this; - } - - /** - * Coordinates for a rectangular area in which to search. Each bounding box is defined by the two - * opposite points of its diagonal, and expressed as latitude and longitude pair: `[p1 lat, p1 - * long, p2 lat, p2 long]`. Provide multiple bounding boxes as nested arrays. For more - * information, see [rectangular - * area](https://www.algolia.com/doc/guides/managing-results/refine-results/geolocation/#filtering-inside-rectangular-or-polygonal-areas). - */ - @javax.annotation.Nullable - public List> getInsideBoundingBox() { - return insideBoundingBox; - } - - public SearchParamsObject setInsidePolygon(List> insidePolygon) { - this.insidePolygon = insidePolygon; - return this; - } - - public SearchParamsObject addInsidePolygon(List insidePolygonItem) { - if (this.insidePolygon == null) { - this.insidePolygon = new ArrayList<>(); - } - this.insidePolygon.add(insidePolygonItem); - return this; - } - - /** - * Coordinates of a polygon in which to search. Polygons are defined by 3 to 10,000 points. Each - * point is represented by its latitude and longitude. Provide multiple polygons as nested arrays. - * For more information, see [filtering inside - * polygons](https://www.algolia.com/doc/guides/managing-results/refine-results/geolocation/#filtering-inside-rectangular-or-polygonal-areas). - * This parameter is ignored if you also specify `insideBoundingBox`. - */ - @javax.annotation.Nullable - public List> getInsidePolygon() { - return insidePolygon; - } - - public SearchParamsObject setNaturalLanguages(List naturalLanguages) { - this.naturalLanguages = naturalLanguages; - return this; - } - - public SearchParamsObject addNaturalLanguages(SupportedLanguage naturalLanguagesItem) { - if (this.naturalLanguages == null) { - this.naturalLanguages = new ArrayList<>(); - } - this.naturalLanguages.add(naturalLanguagesItem); - return this; - } - - /** - * ISO language codes that adjust settings that are useful for processing natural language queries - * (as opposed to keyword searches): - Sets `removeStopWords` and `ignorePlurals` to the list of - * provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a - * `natural_language` attribute to `ruleContexts` and `analyticsTags`. - */ - @javax.annotation.Nullable - public List getNaturalLanguages() { - return naturalLanguages; - } - - public SearchParamsObject setRuleContexts(List ruleContexts) { - this.ruleContexts = ruleContexts; - return this; - } - - public SearchParamsObject addRuleContexts(String ruleContextsItem) { - if (this.ruleContexts == null) { - this.ruleContexts = new ArrayList<>(); - } - this.ruleContexts.add(ruleContextsItem); - return this; - } - - /** - * Assigns a rule context to the search query. [Rule - * contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) - * are strings that you can use to trigger matching rules. - */ - @javax.annotation.Nullable - public List getRuleContexts() { - return ruleContexts; - } - - public SearchParamsObject setPersonalizationImpact(Integer personalizationImpact) { - this.personalizationImpact = personalizationImpact; - return this; - } - - /** - * Impact that Personalization should have on this search. The higher this value is, the more - * Personalization determines the ranking compared to other factors. For more information, see - * [Understanding Personalization - * impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact). - * minimum: 0 maximum: 100 - */ - @javax.annotation.Nullable - public Integer getPersonalizationImpact() { - return personalizationImpact; - } - - public SearchParamsObject setUserToken(String userToken) { - this.userToken = userToken; - return this; - } - - /** - * Unique pseudonymous or anonymous user identifier. This helps with analytics and click and - * conversion events. For more information, see [user - * token](https://www.algolia.com/doc/guides/sending-events/concepts/usertoken/). - */ - @javax.annotation.Nullable - public String getUserToken() { - return userToken; - } - - public SearchParamsObject setGetRankingInfo(Boolean getRankingInfo) { - this.getRankingInfo = getRankingInfo; - return this; - } - - /** Whether the search response should include detailed ranking information. */ - @javax.annotation.Nullable - public Boolean getGetRankingInfo() { - return getRankingInfo; - } - - public SearchParamsObject setSynonyms(Boolean synonyms) { - this.synonyms = synonyms; - return this; - } - - /** Whether to take into account an index's synonyms for this search. */ - @javax.annotation.Nullable - public Boolean getSynonyms() { - return synonyms; - } - - public SearchParamsObject setClickAnalytics(Boolean clickAnalytics) { - this.clickAnalytics = clickAnalytics; - return this; - } - - /** - * Whether to include a `queryID` attribute in the response. The query ID is a unique identifier - * for a search query and is required for tracking [click and conversion - * events](https://www.algolia.com/guides/sending-events/getting-started/). - */ - @javax.annotation.Nullable - public Boolean getClickAnalytics() { - return clickAnalytics; - } - - public SearchParamsObject setAnalytics(Boolean analytics) { - this.analytics = analytics; - return this; - } - - /** Whether this search will be included in Analytics. */ - @javax.annotation.Nullable - public Boolean getAnalytics() { - return analytics; - } - - public SearchParamsObject setAnalyticsTags(List analyticsTags) { - this.analyticsTags = analyticsTags; - return this; - } - - public SearchParamsObject addAnalyticsTags(String analyticsTagsItem) { - if (this.analyticsTags == null) { - this.analyticsTags = new ArrayList<>(); - } - this.analyticsTags.add(analyticsTagsItem); - return this; - } - - /** - * Tags to apply to the query for [segmenting analytics - * data](https://www.algolia.com/doc/guides/search-analytics/guides/segments/). - */ - @javax.annotation.Nullable - public List getAnalyticsTags() { - return analyticsTags; - } - - public SearchParamsObject setPercentileComputation(Boolean percentileComputation) { - this.percentileComputation = percentileComputation; - return this; - } - - /** Whether to include this search when calculating processing-time percentiles. */ - @javax.annotation.Nullable - public Boolean getPercentileComputation() { - return percentileComputation; - } - - public SearchParamsObject setEnableABTest(Boolean enableABTest) { - this.enableABTest = enableABTest; - return this; - } - - /** Whether to enable A/B testing for this search. */ - @javax.annotation.Nullable - public Boolean getEnableABTest() { - return enableABTest; - } - - public SearchParamsObject setAttributesToRetrieve(List attributesToRetrieve) { - this.attributesToRetrieve = attributesToRetrieve; - return this; - } - - public SearchParamsObject addAttributesToRetrieve(String attributesToRetrieveItem) { - if (this.attributesToRetrieve == null) { - this.attributesToRetrieve = new ArrayList<>(); - } - this.attributesToRetrieve.add(attributesToRetrieveItem); - return this; - } - - /** - * Attributes to include in the API response. To reduce the size of your response, you can - * retrieve only some of the attributes. Attribute names are case-sensitive. - `*` retrieves all - * attributes, except attributes included in the `customRanking` and `unretrievableAttributes` - * settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash - * and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always - * included. - */ - @javax.annotation.Nullable - public List getAttributesToRetrieve() { - return attributesToRetrieve; - } - - public SearchParamsObject setRanking(List ranking) { - this.ranking = ranking; - return this; - } - - public SearchParamsObject addRanking(String rankingItem) { - if (this.ranking == null) { - this.ranking = new ArrayList<>(); - } - this.ranking.add(rankingItem); - return this; - } - - /** - * Determines the order in which Algolia returns your results. By default, each entry corresponds - * to a [ranking - * criteria](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/). - * The tie-breaking algorithm sequentially applies each criterion in the order they're specified. - * If you configure a replica index for [sorting by an - * attribute](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/how-to/sort-by-attribute/), - * you put the sorting attribute at the top of the list. **Modifiers** - `asc(\"ATTRIBUTE\")`. - * Sort the index by the values of an attribute, in ascending order. - `desc(\"ATTRIBUTE\")`. Sort - * the index by the values of an attribute, in descending order. Before you modify the default - * setting, you should test your changes in the dashboard, and by [A/B - * testing](https://www.algolia.com/doc/guides/ab-testing/what-is-ab-testing/). - */ - @javax.annotation.Nullable - public List getRanking() { - return ranking; - } - - public SearchParamsObject setCustomRanking(List customRanking) { - this.customRanking = customRanking; - return this; - } - - public SearchParamsObject addCustomRanking(String customRankingItem) { - if (this.customRanking == null) { - this.customRanking = new ArrayList<>(); - } - this.customRanking.add(customRankingItem); - return this; - } - - /** - * Attributes to use as [custom - * ranking](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/). - * Attribute names are case-sensitive. The custom ranking attributes decide which items are shown - * first if the other ranking criteria are equal. Records with missing values for your selected - * custom ranking attributes are always sorted last. Boolean attributes are sorted based on their - * alphabetical order. **Modifiers** - `asc(\"ATTRIBUTE\")`. Sort the index by the values of an - * attribute, in ascending order. - `desc(\"ATTRIBUTE\")`. Sort the index by the values of an - * attribute, in descending order. If you use two or more custom ranking attributes, [reduce the - * precision](https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/how-to/controlling-custom-ranking-metrics-precision/) - * of your first attributes, or the other attributes will never be applied. - */ - @javax.annotation.Nullable - public List getCustomRanking() { - return customRanking; - } - - public SearchParamsObject setRelevancyStrictness(Integer relevancyStrictness) { - this.relevancyStrictness = relevancyStrictness; - return this; - } - - /** - * Relevancy threshold below which less relevant results aren't included in the results. You can - * only set `relevancyStrictness` on [virtual replica - * indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). - * Use this setting to strike a balance between the relevance and number of returned results. - */ - @javax.annotation.Nullable - public Integer getRelevancyStrictness() { - return relevancyStrictness; - } - - public SearchParamsObject setAttributesToHighlight(List attributesToHighlight) { - this.attributesToHighlight = attributesToHighlight; - return this; - } - - public SearchParamsObject addAttributesToHighlight(String attributesToHighlightItem) { - if (this.attributesToHighlight == null) { - this.attributesToHighlight = new ArrayList<>(); - } - this.attributesToHighlight.add(attributesToHighlightItem); - return this; - } - - /** - * Attributes to highlight. By default, all searchable attributes are highlighted. Use `*` to - * highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names - * are case-sensitive. With highlighting, strings that match the search query are surrounded by - * HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually - * highlight matching parts of a search query in your UI. For more information, see [Highlighting - * and - * snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/). - */ - @javax.annotation.Nullable - public List getAttributesToHighlight() { - return attributesToHighlight; - } - - public SearchParamsObject setAttributesToSnippet(List attributesToSnippet) { - this.attributesToSnippet = attributesToSnippet; - return this; - } - - public SearchParamsObject addAttributesToSnippet(String attributesToSnippetItem) { - if (this.attributesToSnippet == null) { - this.attributesToSnippet = new ArrayList<>(); - } - this.attributesToSnippet.add(attributesToSnippetItem); - return this; - } - - /** - * Attributes for which to enable snippets. Attribute names are case-sensitive. Snippets provide - * additional context to matched words. If you enable snippets, they include 10 words, including - * the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can - * adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is - * the number of words to be extracted. - */ - @javax.annotation.Nullable - public List getAttributesToSnippet() { - return attributesToSnippet; - } - - public SearchParamsObject setHighlightPreTag(String highlightPreTag) { - this.highlightPreTag = highlightPreTag; - return this; - } - - /** HTML tag to insert before the highlighted parts in all highlighted results and snippets. */ - @javax.annotation.Nullable - public String getHighlightPreTag() { - return highlightPreTag; - } - - public SearchParamsObject setHighlightPostTag(String highlightPostTag) { - this.highlightPostTag = highlightPostTag; - return this; - } - - /** HTML tag to insert after the highlighted parts in all highlighted results and snippets. */ - @javax.annotation.Nullable - public String getHighlightPostTag() { - return highlightPostTag; - } - - public SearchParamsObject setSnippetEllipsisText(String snippetEllipsisText) { - this.snippetEllipsisText = snippetEllipsisText; - return this; - } - - /** String used as an ellipsis indicator when a snippet is truncated. */ - @javax.annotation.Nullable - public String getSnippetEllipsisText() { - return snippetEllipsisText; - } - - public SearchParamsObject setRestrictHighlightAndSnippetArrays(Boolean restrictHighlightAndSnippetArrays) { - this.restrictHighlightAndSnippetArrays = restrictHighlightAndSnippetArrays; - return this; - } - - /** - * Whether to restrict highlighting and snippeting to items that at least partially matched the - * search query. By default, all items are highlighted and snippeted. - */ - @javax.annotation.Nullable - public Boolean getRestrictHighlightAndSnippetArrays() { - return restrictHighlightAndSnippetArrays; - } - - public SearchParamsObject setHitsPerPage(Integer hitsPerPage) { - this.hitsPerPage = hitsPerPage; - return this; - } - - /** Number of hits per page. minimum: 1 maximum: 1000 */ - @javax.annotation.Nullable - public Integer getHitsPerPage() { - return hitsPerPage; - } - - public SearchParamsObject setMinWordSizefor1Typo(Integer minWordSizefor1Typo) { - this.minWordSizefor1Typo = minWordSizefor1Typo; - return this; - } - - /** - * Minimum number of characters a word in the search query must contain to accept matches with - * [one - * typo](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos). - */ - @javax.annotation.Nullable - public Integer getMinWordSizefor1Typo() { - return minWordSizefor1Typo; - } - - public SearchParamsObject setMinWordSizefor2Typos(Integer minWordSizefor2Typos) { - this.minWordSizefor2Typos = minWordSizefor2Typos; - return this; - } - - /** - * Minimum number of characters a word in the search query must contain to accept matches with - * [two - * typos](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/in-depth/configuring-typo-tolerance/#configuring-word-length-for-typos). - */ - @javax.annotation.Nullable - public Integer getMinWordSizefor2Typos() { - return minWordSizefor2Typos; - } - - public SearchParamsObject setTypoTolerance(TypoTolerance typoTolerance) { - this.typoTolerance = typoTolerance; - return this; - } - - /** Get typoTolerance */ - @javax.annotation.Nullable - public TypoTolerance getTypoTolerance() { - return typoTolerance; - } - - public SearchParamsObject setAllowTyposOnNumericTokens(Boolean allowTyposOnNumericTokens) { - this.allowTyposOnNumericTokens = allowTyposOnNumericTokens; - return this; - } - - /** - * Whether to allow typos on numbers in the search query. Turn off this setting to reduce the - * number of irrelevant matches when searching in large sets of similar numbers. - */ - @javax.annotation.Nullable - public Boolean getAllowTyposOnNumericTokens() { - return allowTyposOnNumericTokens; - } - - public SearchParamsObject setDisableTypoToleranceOnAttributes(List disableTypoToleranceOnAttributes) { - this.disableTypoToleranceOnAttributes = disableTypoToleranceOnAttributes; - return this; - } - - public SearchParamsObject addDisableTypoToleranceOnAttributes(String disableTypoToleranceOnAttributesItem) { - if (this.disableTypoToleranceOnAttributes == null) { - this.disableTypoToleranceOnAttributes = new ArrayList<>(); - } - this.disableTypoToleranceOnAttributes.add(disableTypoToleranceOnAttributesItem); - return this; - } - - /** - * Attributes for which you want to turn off [typo - * tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). - * Attribute names are case-sensitive. Returning only exact matches can help when: - [Searching in - * hyphenated - * attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - * - Reducing the number of matches when you have too many. This can happen with attributes that - * are long blocks of text, such as product descriptions. Consider alternatives such as - * `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual - * spellings that might look like typos. - */ - @javax.annotation.Nullable - public List getDisableTypoToleranceOnAttributes() { - return disableTypoToleranceOnAttributes; - } - - public SearchParamsObject setIgnorePlurals(IgnorePlurals ignorePlurals) { - this.ignorePlurals = ignorePlurals; - return this; - } - - /** Get ignorePlurals */ - @javax.annotation.Nullable - public IgnorePlurals getIgnorePlurals() { - return ignorePlurals; - } - - public SearchParamsObject setRemoveStopWords(RemoveStopWords removeStopWords) { - this.removeStopWords = removeStopWords; - return this; - } - - /** Get removeStopWords */ - @javax.annotation.Nullable - public RemoveStopWords getRemoveStopWords() { - return removeStopWords; - } - - public SearchParamsObject setKeepDiacriticsOnCharacters(String keepDiacriticsOnCharacters) { - this.keepDiacriticsOnCharacters = keepDiacriticsOnCharacters; - return this; - } - - /** - * Characters for which diacritics should be preserved. By default, Algolia removes diacritics - * from letters. For example, `é` becomes `e`. If this causes issues in your search, you can - * specify characters that should keep their diacritics. - */ - @javax.annotation.Nullable - public String getKeepDiacriticsOnCharacters() { - return keepDiacriticsOnCharacters; - } - - public SearchParamsObject setQueryLanguages(List queryLanguages) { - this.queryLanguages = queryLanguages; - return this; - } - - public SearchParamsObject addQueryLanguages(SupportedLanguage queryLanguagesItem) { - if (this.queryLanguages == null) { - this.queryLanguages = new ArrayList<>(); - } - this.queryLanguages.add(queryLanguagesItem); - return this; - } - - /** - * Languages for language-specific query processing steps such as plurals, stop-word removal, and - * word-detection dictionaries. This setting sets a default list of languages used by the - * `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word - * detection in the logogram-based - * [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) - * languages. To support this, you must place the CJK language **first**. **You should always - * specify a query language.** If you don't specify an indexing language, the search engine uses - * all [supported - * languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), - * or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This - * can lead to unexpected search results. For more information, see [Language-specific - * configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/). - */ - @javax.annotation.Nullable - public List getQueryLanguages() { - return queryLanguages; - } - - public SearchParamsObject setDecompoundQuery(Boolean decompoundQuery) { - this.decompoundQuery = decompoundQuery; - return this; - } - - /** - * Whether to split compound words in the query into their building blocks. For more information, - * see [Word - * segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). - * Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and - * Norwegian. Decompounding doesn't work for words with [non-spacing mark Unicode - * characters](https://www.charactercodes.net/category/non-spacing_mark). For example, - * `Gartenstühle` won't be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308). - */ - @javax.annotation.Nullable - public Boolean getDecompoundQuery() { - return decompoundQuery; - } - - public SearchParamsObject setEnableRules(Boolean enableRules) { - this.enableRules = enableRules; - return this; - } - - /** Whether to enable rules. */ - @javax.annotation.Nullable - public Boolean getEnableRules() { - return enableRules; - } - - public SearchParamsObject setEnablePersonalization(Boolean enablePersonalization) { - this.enablePersonalization = enablePersonalization; - return this; - } - - /** Whether to enable Personalization. */ - @javax.annotation.Nullable - public Boolean getEnablePersonalization() { - return enablePersonalization; - } - - public SearchParamsObject setQueryType(QueryType queryType) { - this.queryType = queryType; - return this; - } - - /** Get queryType */ - @javax.annotation.Nullable - public QueryType getQueryType() { - return queryType; - } - - public SearchParamsObject setRemoveWordsIfNoResults(RemoveWordsIfNoResults removeWordsIfNoResults) { - this.removeWordsIfNoResults = removeWordsIfNoResults; - return this; - } - - /** Get removeWordsIfNoResults */ - @javax.annotation.Nullable - public RemoveWordsIfNoResults getRemoveWordsIfNoResults() { - return removeWordsIfNoResults; - } - - public SearchParamsObject setMode(Mode mode) { - this.mode = mode; - return this; - } - - /** Get mode */ - @javax.annotation.Nullable - public Mode getMode() { - return mode; - } - - public SearchParamsObject setSemanticSearch(SemanticSearch semanticSearch) { - this.semanticSearch = semanticSearch; - return this; - } - - /** Get semanticSearch */ - @javax.annotation.Nullable - public SemanticSearch getSemanticSearch() { - return semanticSearch; - } - - public SearchParamsObject setAdvancedSyntax(Boolean advancedSyntax) { - this.advancedSyntax = advancedSyntax; - return this; - } - - /** - * Whether to support phrase matching and excluding words from search queries. Use the - * `advancedSyntaxFeatures` parameter to control which feature is supported. - */ - @javax.annotation.Nullable - public Boolean getAdvancedSyntax() { - return advancedSyntax; - } - - public SearchParamsObject setOptionalWords(List optionalWords) { - this.optionalWords = optionalWords; - return this; - } - - public SearchParamsObject addOptionalWords(String optionalWordsItem) { - if (this.optionalWords == null) { - this.optionalWords = new ArrayList<>(); - } - this.optionalWords.add(optionalWordsItem); - return this; - } - - /** - * Words that should be considered optional when found in the query. By default, records must - * match all words in the search query to be included in the search results. Adding optional words - * can help to increase the number of search results by running an additional search query that - * doesn't include the optional words. For example, if the search query is \"action video\" and - * \"video\" is an optional word, the search engine runs two queries. One for \"action video\" and - * one for \"action\". Records that match all words are ranked higher. For a search query with 4 - * or more words **and** all its words are optional, the number of matched words required for a - * record to be included in the search results increases for every 1,000 records: - If - * `optionalWords` has less than 10 words, the required number of matched words increases by 1: - * results 1 to 1,000 require 1 matched word, results 1,001 to 2000 need 2 matched words. - If - * `optionalWords` has 10 or more words, the number of required matched words increases by the - * number of optional words dividied by 5 (rounded down). For example, with 18 optional words: - * results 1 to 1,000 require 1 matched word, results 1,001 to 2000 need 4 matched words. For more - * information, see [Optional - * words](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/empty-or-insufficient-results/#creating-a-list-of-optional-words). - */ - @javax.annotation.Nullable - public List getOptionalWords() { - return optionalWords; - } - - public SearchParamsObject setDisableExactOnAttributes(List disableExactOnAttributes) { - this.disableExactOnAttributes = disableExactOnAttributes; - return this; - } - - public SearchParamsObject addDisableExactOnAttributes(String disableExactOnAttributesItem) { - if (this.disableExactOnAttributes == null) { - this.disableExactOnAttributes = new ArrayList<>(); - } - this.disableExactOnAttributes.add(disableExactOnAttributesItem); - return this; - } - - /** - * Searchable attributes for which you want to [turn off the Exact ranking - * criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). - * Attribute names are case-sensitive. This can be useful for attributes with long values, where - * the likelyhood of an exact match is high, such as product descriptions. Turning off the Exact - * ranking criterion for these attributes favors exact matching on other attributes. This reduces - * the impact of individual attributes with a lot of content on ranking. - */ - @javax.annotation.Nullable - public List getDisableExactOnAttributes() { - return disableExactOnAttributes; - } - - public SearchParamsObject setExactOnSingleWordQuery(ExactOnSingleWordQuery exactOnSingleWordQuery) { - this.exactOnSingleWordQuery = exactOnSingleWordQuery; - return this; - } - - /** Get exactOnSingleWordQuery */ - @javax.annotation.Nullable - public ExactOnSingleWordQuery getExactOnSingleWordQuery() { - return exactOnSingleWordQuery; - } - - public SearchParamsObject setAlternativesAsExact(List alternativesAsExact) { - this.alternativesAsExact = alternativesAsExact; - return this; - } - - public SearchParamsObject addAlternativesAsExact(AlternativesAsExact alternativesAsExactItem) { - if (this.alternativesAsExact == null) { - this.alternativesAsExact = new ArrayList<>(); - } - this.alternativesAsExact.add(alternativesAsExactItem); - return this; - } - - /** - * Alternatives of query words that should be considered as exact matches by the Exact ranking - * criterion. - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` - * setting are considered exact matches. - `singleWordSynonym`. Single-word synonyms, such as - * \"NY/NYC\" are considered exact matches. - `multiWordsSynonym`. Multi-word synonyms, such as - * \"NY/New York\" are considered exact matches. - */ - @javax.annotation.Nullable - public List getAlternativesAsExact() { - return alternativesAsExact; - } - - public SearchParamsObject setAdvancedSyntaxFeatures(List advancedSyntaxFeatures) { - this.advancedSyntaxFeatures = advancedSyntaxFeatures; - return this; - } - - public SearchParamsObject addAdvancedSyntaxFeatures(AdvancedSyntaxFeatures advancedSyntaxFeaturesItem) { - if (this.advancedSyntaxFeatures == null) { - this.advancedSyntaxFeatures = new ArrayList<>(); - } - this.advancedSyntaxFeatures.add(advancedSyntaxFeaturesItem); - return this; - } - - /** - * Advanced search syntax features you want to support. - `exactPhrase`. Phrases in quotes must - * match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact - * string \"iPhone case\". - `excludeWords`. Query words prefixed with a `-` must not occur in a - * record. For example, `search -engine` matches records that contain \"search\" but not - * \"engine\". This setting only has an effect if `advancedSyntax` is true. - */ - @javax.annotation.Nullable - public List getAdvancedSyntaxFeatures() { - return advancedSyntaxFeatures; - } - - public SearchParamsObject setDistinct(Distinct distinct) { - this.distinct = distinct; - return this; - } - - /** Get distinct */ - @javax.annotation.Nullable - public Distinct getDistinct() { - return distinct; - } - - public SearchParamsObject setReplaceSynonymsInHighlight(Boolean replaceSynonymsInHighlight) { - this.replaceSynonymsInHighlight = replaceSynonymsInHighlight; - return this; - } - - /** - * Whether to replace a highlighted word with the matched synonym. By default, the original words - * are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` - * and a search for `home`, records matching either \"home\" or \"house\" are included in the - * search results, and either \"home\" or \"house\" are highlighted. With - * `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, - * but all occurences of \"house\" are replaced by \"home\" in the highlighted response. - */ - @javax.annotation.Nullable - public Boolean getReplaceSynonymsInHighlight() { - return replaceSynonymsInHighlight; - } - - public SearchParamsObject setMinProximity(Integer minProximity) { - this.minProximity = minProximity; - return this; - } - - /** - * Minimum proximity score for two matching words. This adjusts the [Proximity ranking - * criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) - * by equally scoring matches that are farther apart. For example, if `minProximity` is 2, - * neighboring matches and matches with one word between them would have the same score. minimum: - * 1 maximum: 7 - */ - @javax.annotation.Nullable - public Integer getMinProximity() { - return minProximity; - } - - public SearchParamsObject setResponseFields(List responseFields) { - this.responseFields = responseFields; - return this; - } - - public SearchParamsObject addResponseFields(String responseFieldsItem) { - if (this.responseFields == null) { - this.responseFields = new ArrayList<>(); - } - this.responseFields.add(responseFieldsItem); - return this; - } - - /** - * Properties to include in the API response of `search` and `browse` requests. By default, all - * response properties are included. To reduce the response size, you can select, which attributes - * should be included. You can't exclude these properties: `message`, `warning`, `cursor`, - * `serverUsed`, `indexUsed`, `abTestVariantID`, `parsedQuery`, or any property triggered by the - * `getRankingInfo` parameter. Don't exclude properties that you might need in your search UI. - */ - @javax.annotation.Nullable - public List getResponseFields() { - return responseFields; - } - - public SearchParamsObject setMaxFacetHits(Integer maxFacetHits) { - this.maxFacetHits = maxFacetHits; - return this; - } - - /** - * Maximum number of facet values to return when [searching for facet - * values](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#search-for-facet-values). - * maximum: 100 - */ - @javax.annotation.Nullable - public Integer getMaxFacetHits() { - return maxFacetHits; - } - - public SearchParamsObject setMaxValuesPerFacet(Integer maxValuesPerFacet) { - this.maxValuesPerFacet = maxValuesPerFacet; - return this; - } - - /** Maximum number of facet values to return for each facet. maximum: 1000 */ - @javax.annotation.Nullable - public Integer getMaxValuesPerFacet() { - return maxValuesPerFacet; - } - - public SearchParamsObject setSortFacetValuesBy(String sortFacetValuesBy) { - this.sortFacetValuesBy = sortFacetValuesBy; - return this; - } - - /** - * Order in which to retrieve facet values. - `count`. Facet values are retrieved by decreasing - * count. The count is the number of matching records containing this facet value. - `alpha`. - * Retrieve facet values alphabetically. This setting doesn't influence how facet values are - * displayed in your UI (see `renderingContent`). For more information, see [facet value - * display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/). - */ - @javax.annotation.Nullable - public String getSortFacetValuesBy() { - return sortFacetValuesBy; - } - - public SearchParamsObject setAttributeCriteriaComputedByMinProximity(Boolean attributeCriteriaComputedByMinProximity) { - this.attributeCriteriaComputedByMinProximity = attributeCriteriaComputedByMinProximity; - return this; - } - - /** - * Whether the best matching attribute should be determined by minimum proximity. This setting - * only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` - * setting. If true, the best matching attribute is selected based on the minimum proximity of - * multiple matches. Otherwise, the best matching attribute is determined by the order in the - * `searchableAttributes` setting. - */ - @javax.annotation.Nullable - public Boolean getAttributeCriteriaComputedByMinProximity() { - return attributeCriteriaComputedByMinProximity; - } - - public SearchParamsObject setRenderingContent(RenderingContent renderingContent) { - this.renderingContent = renderingContent; - return this; - } - - /** Get renderingContent */ - @javax.annotation.Nullable - public RenderingContent getRenderingContent() { - return renderingContent; - } - - public SearchParamsObject setEnableReRanking(Boolean enableReRanking) { - this.enableReRanking = enableReRanking; - return this; - } - - /** - * Whether this search will use [Dynamic - * Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/). This setting only has - * an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard. - */ - @javax.annotation.Nullable - public Boolean getEnableReRanking() { - return enableReRanking; - } - - public SearchParamsObject setReRankingApplyFilter(ReRankingApplyFilter reRankingApplyFilter) { - this.reRankingApplyFilter = reRankingApplyFilter; - return this; - } - - /** Get reRankingApplyFilter */ - @javax.annotation.Nullable - public ReRankingApplyFilter getReRankingApplyFilter() { - return reRankingApplyFilter; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SearchParamsObject searchParamsObject = (SearchParamsObject) o; - return ( - Objects.equals(this.query, searchParamsObject.query) && - Objects.equals(this.similarQuery, searchParamsObject.similarQuery) && - Objects.equals(this.filters, searchParamsObject.filters) && - Objects.equals(this.facetFilters, searchParamsObject.facetFilters) && - Objects.equals(this.optionalFilters, searchParamsObject.optionalFilters) && - Objects.equals(this.numericFilters, searchParamsObject.numericFilters) && - Objects.equals(this.tagFilters, searchParamsObject.tagFilters) && - Objects.equals(this.sumOrFiltersScores, searchParamsObject.sumOrFiltersScores) && - Objects.equals(this.restrictSearchableAttributes, searchParamsObject.restrictSearchableAttributes) && - Objects.equals(this.facets, searchParamsObject.facets) && - Objects.equals(this.facetingAfterDistinct, searchParamsObject.facetingAfterDistinct) && - Objects.equals(this.page, searchParamsObject.page) && - Objects.equals(this.offset, searchParamsObject.offset) && - Objects.equals(this.length, searchParamsObject.length) && - Objects.equals(this.aroundLatLng, searchParamsObject.aroundLatLng) && - Objects.equals(this.aroundLatLngViaIP, searchParamsObject.aroundLatLngViaIP) && - Objects.equals(this.aroundRadius, searchParamsObject.aroundRadius) && - Objects.equals(this.aroundPrecision, searchParamsObject.aroundPrecision) && - Objects.equals(this.minimumAroundRadius, searchParamsObject.minimumAroundRadius) && - Objects.equals(this.insideBoundingBox, searchParamsObject.insideBoundingBox) && - Objects.equals(this.insidePolygon, searchParamsObject.insidePolygon) && - Objects.equals(this.naturalLanguages, searchParamsObject.naturalLanguages) && - Objects.equals(this.ruleContexts, searchParamsObject.ruleContexts) && - Objects.equals(this.personalizationImpact, searchParamsObject.personalizationImpact) && - Objects.equals(this.userToken, searchParamsObject.userToken) && - Objects.equals(this.getRankingInfo, searchParamsObject.getRankingInfo) && - Objects.equals(this.synonyms, searchParamsObject.synonyms) && - Objects.equals(this.clickAnalytics, searchParamsObject.clickAnalytics) && - Objects.equals(this.analytics, searchParamsObject.analytics) && - Objects.equals(this.analyticsTags, searchParamsObject.analyticsTags) && - Objects.equals(this.percentileComputation, searchParamsObject.percentileComputation) && - Objects.equals(this.enableABTest, searchParamsObject.enableABTest) && - Objects.equals(this.attributesToRetrieve, searchParamsObject.attributesToRetrieve) && - Objects.equals(this.ranking, searchParamsObject.ranking) && - Objects.equals(this.customRanking, searchParamsObject.customRanking) && - Objects.equals(this.relevancyStrictness, searchParamsObject.relevancyStrictness) && - Objects.equals(this.attributesToHighlight, searchParamsObject.attributesToHighlight) && - Objects.equals(this.attributesToSnippet, searchParamsObject.attributesToSnippet) && - Objects.equals(this.highlightPreTag, searchParamsObject.highlightPreTag) && - Objects.equals(this.highlightPostTag, searchParamsObject.highlightPostTag) && - Objects.equals(this.snippetEllipsisText, searchParamsObject.snippetEllipsisText) && - Objects.equals(this.restrictHighlightAndSnippetArrays, searchParamsObject.restrictHighlightAndSnippetArrays) && - Objects.equals(this.hitsPerPage, searchParamsObject.hitsPerPage) && - Objects.equals(this.minWordSizefor1Typo, searchParamsObject.minWordSizefor1Typo) && - Objects.equals(this.minWordSizefor2Typos, searchParamsObject.minWordSizefor2Typos) && - Objects.equals(this.typoTolerance, searchParamsObject.typoTolerance) && - Objects.equals(this.allowTyposOnNumericTokens, searchParamsObject.allowTyposOnNumericTokens) && - Objects.equals(this.disableTypoToleranceOnAttributes, searchParamsObject.disableTypoToleranceOnAttributes) && - Objects.equals(this.ignorePlurals, searchParamsObject.ignorePlurals) && - Objects.equals(this.removeStopWords, searchParamsObject.removeStopWords) && - Objects.equals(this.keepDiacriticsOnCharacters, searchParamsObject.keepDiacriticsOnCharacters) && - Objects.equals(this.queryLanguages, searchParamsObject.queryLanguages) && - Objects.equals(this.decompoundQuery, searchParamsObject.decompoundQuery) && - Objects.equals(this.enableRules, searchParamsObject.enableRules) && - Objects.equals(this.enablePersonalization, searchParamsObject.enablePersonalization) && - Objects.equals(this.queryType, searchParamsObject.queryType) && - Objects.equals(this.removeWordsIfNoResults, searchParamsObject.removeWordsIfNoResults) && - Objects.equals(this.mode, searchParamsObject.mode) && - Objects.equals(this.semanticSearch, searchParamsObject.semanticSearch) && - Objects.equals(this.advancedSyntax, searchParamsObject.advancedSyntax) && - Objects.equals(this.optionalWords, searchParamsObject.optionalWords) && - Objects.equals(this.disableExactOnAttributes, searchParamsObject.disableExactOnAttributes) && - Objects.equals(this.exactOnSingleWordQuery, searchParamsObject.exactOnSingleWordQuery) && - Objects.equals(this.alternativesAsExact, searchParamsObject.alternativesAsExact) && - Objects.equals(this.advancedSyntaxFeatures, searchParamsObject.advancedSyntaxFeatures) && - Objects.equals(this.distinct, searchParamsObject.distinct) && - Objects.equals(this.replaceSynonymsInHighlight, searchParamsObject.replaceSynonymsInHighlight) && - Objects.equals(this.minProximity, searchParamsObject.minProximity) && - Objects.equals(this.responseFields, searchParamsObject.responseFields) && - Objects.equals(this.maxFacetHits, searchParamsObject.maxFacetHits) && - Objects.equals(this.maxValuesPerFacet, searchParamsObject.maxValuesPerFacet) && - Objects.equals(this.sortFacetValuesBy, searchParamsObject.sortFacetValuesBy) && - Objects.equals(this.attributeCriteriaComputedByMinProximity, searchParamsObject.attributeCriteriaComputedByMinProximity) && - Objects.equals(this.renderingContent, searchParamsObject.renderingContent) && - Objects.equals(this.enableReRanking, searchParamsObject.enableReRanking) && - Objects.equals(this.reRankingApplyFilter, searchParamsObject.reRankingApplyFilter) - ); - } - - @Override - public int hashCode() { - return Objects.hash( - query, - similarQuery, - filters, - facetFilters, - optionalFilters, - numericFilters, - tagFilters, - sumOrFiltersScores, - restrictSearchableAttributes, - facets, - facetingAfterDistinct, - page, - offset, - length, - aroundLatLng, - aroundLatLngViaIP, - aroundRadius, - aroundPrecision, - minimumAroundRadius, - insideBoundingBox, - insidePolygon, - naturalLanguages, - ruleContexts, - personalizationImpact, - userToken, - getRankingInfo, - synonyms, - clickAnalytics, - analytics, - analyticsTags, - percentileComputation, - enableABTest, - attributesToRetrieve, - ranking, - customRanking, - relevancyStrictness, - attributesToHighlight, - attributesToSnippet, - highlightPreTag, - highlightPostTag, - snippetEllipsisText, - restrictHighlightAndSnippetArrays, - hitsPerPage, - minWordSizefor1Typo, - minWordSizefor2Typos, - typoTolerance, - allowTyposOnNumericTokens, - disableTypoToleranceOnAttributes, - ignorePlurals, - removeStopWords, - keepDiacriticsOnCharacters, - queryLanguages, - decompoundQuery, - enableRules, - enablePersonalization, - queryType, - removeWordsIfNoResults, - mode, - semanticSearch, - advancedSyntax, - optionalWords, - disableExactOnAttributes, - exactOnSingleWordQuery, - alternativesAsExact, - advancedSyntaxFeatures, - distinct, - replaceSynonymsInHighlight, - minProximity, - responseFields, - maxFacetHits, - maxValuesPerFacet, - sortFacetValuesBy, - attributeCriteriaComputedByMinProximity, - renderingContent, - enableReRanking, - reRankingApplyFilter - ); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SearchParamsObject {\n"); - sb.append(" query: ").append(toIndentedString(query)).append("\n"); - sb.append(" similarQuery: ").append(toIndentedString(similarQuery)).append("\n"); - sb.append(" filters: ").append(toIndentedString(filters)).append("\n"); - sb.append(" facetFilters: ").append(toIndentedString(facetFilters)).append("\n"); - sb.append(" optionalFilters: ").append(toIndentedString(optionalFilters)).append("\n"); - sb.append(" numericFilters: ").append(toIndentedString(numericFilters)).append("\n"); - sb.append(" tagFilters: ").append(toIndentedString(tagFilters)).append("\n"); - sb.append(" sumOrFiltersScores: ").append(toIndentedString(sumOrFiltersScores)).append("\n"); - sb.append(" restrictSearchableAttributes: ").append(toIndentedString(restrictSearchableAttributes)).append("\n"); - sb.append(" facets: ").append(toIndentedString(facets)).append("\n"); - sb.append(" facetingAfterDistinct: ").append(toIndentedString(facetingAfterDistinct)).append("\n"); - sb.append(" page: ").append(toIndentedString(page)).append("\n"); - sb.append(" offset: ").append(toIndentedString(offset)).append("\n"); - sb.append(" length: ").append(toIndentedString(length)).append("\n"); - sb.append(" aroundLatLng: ").append(toIndentedString(aroundLatLng)).append("\n"); - sb.append(" aroundLatLngViaIP: ").append(toIndentedString(aroundLatLngViaIP)).append("\n"); - sb.append(" aroundRadius: ").append(toIndentedString(aroundRadius)).append("\n"); - sb.append(" aroundPrecision: ").append(toIndentedString(aroundPrecision)).append("\n"); - sb.append(" minimumAroundRadius: ").append(toIndentedString(minimumAroundRadius)).append("\n"); - sb.append(" insideBoundingBox: ").append(toIndentedString(insideBoundingBox)).append("\n"); - sb.append(" insidePolygon: ").append(toIndentedString(insidePolygon)).append("\n"); - sb.append(" naturalLanguages: ").append(toIndentedString(naturalLanguages)).append("\n"); - sb.append(" ruleContexts: ").append(toIndentedString(ruleContexts)).append("\n"); - sb.append(" personalizationImpact: ").append(toIndentedString(personalizationImpact)).append("\n"); - sb.append(" userToken: ").append(toIndentedString(userToken)).append("\n"); - sb.append(" getRankingInfo: ").append(toIndentedString(getRankingInfo)).append("\n"); - sb.append(" synonyms: ").append(toIndentedString(synonyms)).append("\n"); - sb.append(" clickAnalytics: ").append(toIndentedString(clickAnalytics)).append("\n"); - sb.append(" analytics: ").append(toIndentedString(analytics)).append("\n"); - sb.append(" analyticsTags: ").append(toIndentedString(analyticsTags)).append("\n"); - sb.append(" percentileComputation: ").append(toIndentedString(percentileComputation)).append("\n"); - sb.append(" enableABTest: ").append(toIndentedString(enableABTest)).append("\n"); - sb.append(" attributesToRetrieve: ").append(toIndentedString(attributesToRetrieve)).append("\n"); - sb.append(" ranking: ").append(toIndentedString(ranking)).append("\n"); - sb.append(" customRanking: ").append(toIndentedString(customRanking)).append("\n"); - sb.append(" relevancyStrictness: ").append(toIndentedString(relevancyStrictness)).append("\n"); - sb.append(" attributesToHighlight: ").append(toIndentedString(attributesToHighlight)).append("\n"); - sb.append(" attributesToSnippet: ").append(toIndentedString(attributesToSnippet)).append("\n"); - sb.append(" highlightPreTag: ").append(toIndentedString(highlightPreTag)).append("\n"); - sb.append(" highlightPostTag: ").append(toIndentedString(highlightPostTag)).append("\n"); - sb.append(" snippetEllipsisText: ").append(toIndentedString(snippetEllipsisText)).append("\n"); - sb.append(" restrictHighlightAndSnippetArrays: ").append(toIndentedString(restrictHighlightAndSnippetArrays)).append("\n"); - sb.append(" hitsPerPage: ").append(toIndentedString(hitsPerPage)).append("\n"); - sb.append(" minWordSizefor1Typo: ").append(toIndentedString(minWordSizefor1Typo)).append("\n"); - sb.append(" minWordSizefor2Typos: ").append(toIndentedString(minWordSizefor2Typos)).append("\n"); - sb.append(" typoTolerance: ").append(toIndentedString(typoTolerance)).append("\n"); - sb.append(" allowTyposOnNumericTokens: ").append(toIndentedString(allowTyposOnNumericTokens)).append("\n"); - sb.append(" disableTypoToleranceOnAttributes: ").append(toIndentedString(disableTypoToleranceOnAttributes)).append("\n"); - sb.append(" ignorePlurals: ").append(toIndentedString(ignorePlurals)).append("\n"); - sb.append(" removeStopWords: ").append(toIndentedString(removeStopWords)).append("\n"); - sb.append(" keepDiacriticsOnCharacters: ").append(toIndentedString(keepDiacriticsOnCharacters)).append("\n"); - sb.append(" queryLanguages: ").append(toIndentedString(queryLanguages)).append("\n"); - sb.append(" decompoundQuery: ").append(toIndentedString(decompoundQuery)).append("\n"); - sb.append(" enableRules: ").append(toIndentedString(enableRules)).append("\n"); - sb.append(" enablePersonalization: ").append(toIndentedString(enablePersonalization)).append("\n"); - sb.append(" queryType: ").append(toIndentedString(queryType)).append("\n"); - sb.append(" removeWordsIfNoResults: ").append(toIndentedString(removeWordsIfNoResults)).append("\n"); - sb.append(" mode: ").append(toIndentedString(mode)).append("\n"); - sb.append(" semanticSearch: ").append(toIndentedString(semanticSearch)).append("\n"); - sb.append(" advancedSyntax: ").append(toIndentedString(advancedSyntax)).append("\n"); - sb.append(" optionalWords: ").append(toIndentedString(optionalWords)).append("\n"); - sb.append(" disableExactOnAttributes: ").append(toIndentedString(disableExactOnAttributes)).append("\n"); - sb.append(" exactOnSingleWordQuery: ").append(toIndentedString(exactOnSingleWordQuery)).append("\n"); - sb.append(" alternativesAsExact: ").append(toIndentedString(alternativesAsExact)).append("\n"); - sb.append(" advancedSyntaxFeatures: ").append(toIndentedString(advancedSyntaxFeatures)).append("\n"); - sb.append(" distinct: ").append(toIndentedString(distinct)).append("\n"); - sb.append(" replaceSynonymsInHighlight: ").append(toIndentedString(replaceSynonymsInHighlight)).append("\n"); - sb.append(" minProximity: ").append(toIndentedString(minProximity)).append("\n"); - sb.append(" responseFields: ").append(toIndentedString(responseFields)).append("\n"); - sb.append(" maxFacetHits: ").append(toIndentedString(maxFacetHits)).append("\n"); - sb.append(" maxValuesPerFacet: ").append(toIndentedString(maxValuesPerFacet)).append("\n"); - sb.append(" sortFacetValuesBy: ").append(toIndentedString(sortFacetValuesBy)).append("\n"); - sb - .append(" attributeCriteriaComputedByMinProximity: ") - .append(toIndentedString(attributeCriteriaComputedByMinProximity)) - .append("\n"); - sb.append(" renderingContent: ").append(toIndentedString(renderingContent)).append("\n"); - sb.append(" enableReRanking: ").append(toIndentedString(enableReRanking)).append("\n"); - sb.append(" reRankingApplyFilter: ").append(toIndentedString(reRankingApplyFilter)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/SemanticSearch.java b/algoliasearch/src/main/java/com/algolia/model/recommend/SemanticSearch.java deleted file mode 100644 index 61ed95fec..000000000 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/SemanticSearch.java +++ /dev/null @@ -1,77 +0,0 @@ -// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost -// - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT. - -package com.algolia.model.recommend; - -import com.fasterxml.jackson.annotation.*; -import com.fasterxml.jackson.databind.annotation.*; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; - -/** - * Settings for the semantic search part of NeuralSearch. Only used when `mode` is `neuralSearch`. - */ -public class SemanticSearch { - - @JsonProperty("eventSources") - private List eventSources; - - public SemanticSearch setEventSources(List eventSources) { - this.eventSources = eventSources; - return this; - } - - public SemanticSearch addEventSources(String eventSourcesItem) { - if (this.eventSources == null) { - this.eventSources = new ArrayList<>(); - } - this.eventSources.add(eventSourcesItem); - return this; - } - - /** - * Indices from which to collect click and conversion events. If null, the current index and all - * its replicas are used. - */ - @javax.annotation.Nullable - public List getEventSources() { - return eventSources; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - SemanticSearch semanticSearch = (SemanticSearch) o; - return Objects.equals(this.eventSources, semanticSearch.eventSources); - } - - @Override - public int hashCode() { - return Objects.hash(eventSources); - } - - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append("class SemanticSearch {\n"); - sb.append(" eventSources: ").append(toIndentedString(eventSources)).append("\n"); - sb.append("}"); - return sb.toString(); - } - - /** - * Convert the given object to string with each line indented by 4 spaces (except the first line). - */ - private String toIndentedString(Object o) { - if (o == null) { - return "null"; - } - return o.toString().replace("\n", "\n "); - } -} diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingFacetsQuery.java b/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingFacetsQuery.java index c49cfbbb6..8b5cae429 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingFacetsQuery.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingFacetsQuery.java @@ -21,7 +21,7 @@ public class TrendingFacetsQuery implements RecommendationsRequest { private Integer maxRecommendations; @JsonProperty("queryParameters") - private SearchParams queryParameters; + private RecommendSearchParams queryParameters; @JsonProperty("facetName") private Object facetName; @@ -73,14 +73,14 @@ public Integer getMaxRecommendations() { return maxRecommendations; } - public TrendingFacetsQuery setQueryParameters(SearchParams queryParameters) { + public TrendingFacetsQuery setQueryParameters(RecommendSearchParams queryParameters) { this.queryParameters = queryParameters; return this; } /** Get queryParameters */ @javax.annotation.Nullable - public SearchParams getQueryParameters() { + public RecommendSearchParams getQueryParameters() { return queryParameters; } diff --git a/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingItemsQuery.java b/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingItemsQuery.java index 6119d13bb..faae9f7c5 100644 --- a/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingItemsQuery.java +++ b/algoliasearch/src/main/java/com/algolia/model/recommend/TrendingItemsQuery.java @@ -21,7 +21,7 @@ public class TrendingItemsQuery implements RecommendationsRequest { private Integer maxRecommendations; @JsonProperty("queryParameters") - private SearchParams queryParameters; + private RecommendSearchParams queryParameters; @JsonProperty("facetName") private String facetName; @@ -33,7 +33,7 @@ public class TrendingItemsQuery implements RecommendationsRequest { private TrendingItemsModel model; @JsonProperty("fallbackParameters") - private SearchParamsObject fallbackParameters; + private FallbackParams fallbackParameters; public TrendingItemsQuery setIndexName(String indexName) { this.indexName = indexName; @@ -76,14 +76,14 @@ public Integer getMaxRecommendations() { return maxRecommendations; } - public TrendingItemsQuery setQueryParameters(SearchParams queryParameters) { + public TrendingItemsQuery setQueryParameters(RecommendSearchParams queryParameters) { this.queryParameters = queryParameters; return this; } /** Get queryParameters */ @javax.annotation.Nullable - public SearchParams getQueryParameters() { + public RecommendSearchParams getQueryParameters() { return queryParameters; } @@ -126,14 +126,14 @@ public TrendingItemsModel getModel() { return model; } - public TrendingItemsQuery setFallbackParameters(SearchParamsObject fallbackParameters) { + public TrendingItemsQuery setFallbackParameters(FallbackParams fallbackParameters) { this.fallbackParameters = fallbackParameters; return this; } /** Get fallbackParameters */ @javax.annotation.Nullable - public SearchParamsObject getFallbackParameters() { + public FallbackParams getFallbackParameters() { return fallbackParameters; }