Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.algolia.api.QuerySuggestionsClient Maven / Gradle / Ivy
// 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.api;
import com.algolia.ApiClient;
import com.algolia.config.*;
import com.algolia.config.ClientOptions;
import com.algolia.exceptions.*;
import com.algolia.model.querysuggestions.*;
import com.algolia.utils.*;
import com.fasterxml.jackson.core.type.TypeReference;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
public class QuerySuggestionsClient extends ApiClient {
private static final String[] allowedRegions = { "eu", "us" };
public QuerySuggestionsClient(String appId, String apiKey, String region) {
this(appId, apiKey, region, null);
}
public QuerySuggestionsClient(String appId, String apiKey, String region, ClientOptions options) {
super(appId, apiKey, "QuerySuggestions", options, getDefaultHosts(region));
}
private static List getDefaultHosts(String region) throws AlgoliaRuntimeException {
List hosts = new ArrayList<>();
boolean found = false;
if (region != null) {
for (String allowed : allowedRegions) {
if (allowed.equals(region)) {
found = true;
break;
}
}
}
if (region == null || !found) {
throw new AlgoliaRuntimeException("`region` is required and must be one of the following: eu, us");
}
String url = "query-suggestions.{region}.algolia.com".replace("{region}", region);
hosts.add(new Host(url, EnumSet.of(CallType.READ, CallType.WRITE)));
return hosts;
}
/**
* Create a new Query Suggestions configuration. You can have up to 100 configurations per Algolia
* application.
*
* @param querySuggestionsConfigurationWithIndex (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 BaseResponse createConfig(
QuerySuggestionsConfigurationWithIndex querySuggestionsConfigurationWithIndex,
RequestOptions requestOptions
) throws AlgoliaRuntimeException {
return LaunderThrowable.await(createConfigAsync(querySuggestionsConfigurationWithIndex, requestOptions));
}
/**
* Create a new Query Suggestions configuration. You can have up to 100 configurations per Algolia
* application.
*
* @param querySuggestionsConfigurationWithIndex (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public BaseResponse createConfig(QuerySuggestionsConfigurationWithIndex querySuggestionsConfigurationWithIndex)
throws AlgoliaRuntimeException {
return this.createConfig(querySuggestionsConfigurationWithIndex, null);
}
/**
* (asynchronously) Create a new Query Suggestions configuration. You can have up to 100
* configurations per Algolia application.
*
* @param querySuggestionsConfigurationWithIndex (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 createConfigAsync(
QuerySuggestionsConfigurationWithIndex querySuggestionsConfigurationWithIndex,
RequestOptions requestOptions
) throws AlgoliaRuntimeException {
if (querySuggestionsConfigurationWithIndex == null) {
throw new AlgoliaRuntimeException("Parameter `querySuggestionsConfigurationWithIndex` is required when calling" + " `createConfig`.");
}
HttpRequest request = HttpRequest
.builder()
.setPath("/1/configs")
.setMethod("POST")
.setBody(querySuggestionsConfigurationWithIndex)
.build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) Create a new Query Suggestions configuration. You can have up to 100
* configurations per Algolia application.
*
* @param querySuggestionsConfigurationWithIndex (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture createConfigAsync(QuerySuggestionsConfigurationWithIndex querySuggestionsConfigurationWithIndex)
throws AlgoliaRuntimeException {
return this.createConfigAsync(querySuggestionsConfigurationWithIndex, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @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 Object del(String path, Map parameters, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(delAsync(path, parameters, requestOptions));
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object del(String path, Map parameters) throws AlgoliaRuntimeException {
return this.del(path, parameters, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 Object del(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.del(path, null, requestOptions);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object del(String path) throws AlgoliaRuntimeException {
return this.del(path, null, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @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 delAsync(String path, Map parameters, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (path == null) {
throw new AlgoliaRuntimeException("Parameter `path` is required when calling `del`.");
}
HttpRequest request = HttpRequest.builder().setPathEncoded("/1{path}", path).setMethod("DELETE").addQueryParameters(parameters).build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture delAsync(String path, Map parameters) throws AlgoliaRuntimeException {
return this.delAsync(path, parameters, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 delAsync(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.delAsync(path, null, requestOptions);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture delAsync(String path) throws AlgoliaRuntimeException {
return this.delAsync(path, null, null);
}
/**
* Delete a Query Suggestions configuration. Deleting only removes the configuration and stops
* updates to the Query Suggestions index. The Query Suggestions index itself is not deleted.
*
* @param indexName Query Suggestions index name. (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 BaseResponse deleteConfig(String indexName, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(deleteConfigAsync(indexName, requestOptions));
}
/**
* Delete a Query Suggestions configuration. Deleting only removes the configuration and stops
* updates to the Query Suggestions index. The Query Suggestions index itself is not deleted.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public BaseResponse deleteConfig(String indexName) throws AlgoliaRuntimeException {
return this.deleteConfig(indexName, null);
}
/**
* (asynchronously) Delete a Query Suggestions configuration. Deleting only removes the
* configuration and stops updates to the Query Suggestions index. The Query Suggestions index
* itself is not deleted.
*
* @param indexName Query Suggestions index name. (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 deleteConfigAsync(String indexName, RequestOptions requestOptions) throws AlgoliaRuntimeException {
if (indexName == null) {
throw new AlgoliaRuntimeException("Parameter `indexName` is required when calling `deleteConfig`.");
}
HttpRequest request = HttpRequest.builder().setPath("/1/configs/{indexName}", indexName).setMethod("DELETE").build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) Delete a Query Suggestions configuration. Deleting only removes the
* configuration and stops updates to the Query Suggestions index. The Query Suggestions index
* itself is not deleted.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture deleteConfigAsync(String indexName) throws AlgoliaRuntimeException {
return this.deleteConfigAsync(indexName, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @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 Object get(String path, Map parameters, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(getAsync(path, parameters, requestOptions));
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object get(String path, Map parameters) throws AlgoliaRuntimeException {
return this.get(path, parameters, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 Object get(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.get(path, null, requestOptions);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object get(String path) throws AlgoliaRuntimeException {
return this.get(path, null, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @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 getAsync(String path, Map parameters, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (path == null) {
throw new AlgoliaRuntimeException("Parameter `path` is required when calling `get`.");
}
HttpRequest request = HttpRequest.builder().setPathEncoded("/1{path}", path).setMethod("GET").addQueryParameters(parameters).build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture getAsync(String path, Map parameters) throws AlgoliaRuntimeException {
return this.getAsync(path, parameters, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 getAsync(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.getAsync(path, null, requestOptions);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture getAsync(String path) throws AlgoliaRuntimeException {
return this.getAsync(path, null, null);
}
/**
* List all Query Suggestions configurations of your Algolia application.
*
* @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 List getAllConfigs(RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(getAllConfigsAsync(requestOptions));
}
/**
* List all Query Suggestions configurations of your Algolia application.
*
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public List getAllConfigs() throws AlgoliaRuntimeException {
return this.getAllConfigs(null);
}
/**
* (asynchronously) List all Query Suggestions configurations of your Algolia application.
*
* @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> getAllConfigsAsync(RequestOptions requestOptions)
throws AlgoliaRuntimeException {
HttpRequest request = HttpRequest.builder().setPath("/1/configs").setMethod("GET").build();
return executeAsync(request, requestOptions, new TypeReference>() {});
}
/**
* (asynchronously) List all Query Suggestions configurations of your Algolia application.
*
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture> getAllConfigsAsync() throws AlgoliaRuntimeException {
return this.getAllConfigsAsync(null);
}
/**
* Get a single Query Suggestions configuration.
*
* @param indexName Query Suggestions index name. (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 QuerySuggestionsConfigurationResponse getConfig(String indexName, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(getConfigAsync(indexName, requestOptions));
}
/**
* Get a single Query Suggestions configuration.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public QuerySuggestionsConfigurationResponse getConfig(String indexName) throws AlgoliaRuntimeException {
return this.getConfig(indexName, null);
}
/**
* (asynchronously) Get a single Query Suggestions configuration.
*
* @param indexName Query Suggestions index name. (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 getConfigAsync(String indexName, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (indexName == null) {
throw new AlgoliaRuntimeException("Parameter `indexName` is required when calling `getConfig`.");
}
HttpRequest request = HttpRequest.builder().setPath("/1/configs/{indexName}", indexName).setMethod("GET").build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) Get a single Query Suggestions configuration.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture getConfigAsync(String indexName) throws AlgoliaRuntimeException {
return this.getConfigAsync(indexName, null);
}
/**
* Report the status of a Query Suggestions index.
*
* @param indexName Query Suggestions index name. (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 GetConfigStatus200Response getConfigStatus(String indexName, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(getConfigStatusAsync(indexName, requestOptions));
}
/**
* Report the status of a Query Suggestions index.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public GetConfigStatus200Response getConfigStatus(String indexName) throws AlgoliaRuntimeException {
return this.getConfigStatus(indexName, null);
}
/**
* (asynchronously) Report the status of a Query Suggestions index.
*
* @param indexName Query Suggestions index name. (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 getConfigStatusAsync(String indexName, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (indexName == null) {
throw new AlgoliaRuntimeException("Parameter `indexName` is required when calling `getConfigStatus`.");
}
HttpRequest request = HttpRequest.builder().setPath("/1/configs/{indexName}/status", indexName).setMethod("GET").build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) Report the status of a Query Suggestions index.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture getConfigStatusAsync(String indexName) throws AlgoliaRuntimeException {
return this.getConfigStatusAsync(indexName, null);
}
/**
* Get the logs for a single Query Suggestions index.
*
* @param indexName Query Suggestions index name. (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 GetLogFile200Response getLogFile(String indexName, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return LaunderThrowable.await(getLogFileAsync(indexName, requestOptions));
}
/**
* Get the logs for a single Query Suggestions index.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public GetLogFile200Response getLogFile(String indexName) throws AlgoliaRuntimeException {
return this.getLogFile(indexName, null);
}
/**
* (asynchronously) Get the logs for a single Query Suggestions index.
*
* @param indexName Query Suggestions index name. (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 getLogFileAsync(String indexName, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (indexName == null) {
throw new AlgoliaRuntimeException("Parameter `indexName` is required when calling `getLogFile`.");
}
HttpRequest request = HttpRequest.builder().setPath("/1/logs/{indexName}", indexName).setMethod("GET").build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) Get the logs for a single Query Suggestions index.
*
* @param indexName Query Suggestions index name. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture getLogFileAsync(String indexName) throws AlgoliaRuntimeException {
return this.getLogFileAsync(indexName, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @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 Object post(String path, Map parameters, Object body, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
return LaunderThrowable.await(postAsync(path, parameters, body, requestOptions));
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object post(String path, Map parameters, Object body) throws AlgoliaRuntimeException {
return this.post(path, parameters, body, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 Object post(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.post(path, null, null, requestOptions);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object post(String path) throws AlgoliaRuntimeException {
return this.post(path, null, null, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @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 postAsync(String path, Map parameters, Object body, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (path == null) {
throw new AlgoliaRuntimeException("Parameter `path` is required when calling `post`.");
}
HttpRequest request = HttpRequest
.builder()
.setPathEncoded("/1{path}", path)
.setMethod("POST")
.setBody(body)
.addQueryParameters(parameters)
.build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture postAsync(String path, Map parameters, Object body) throws AlgoliaRuntimeException {
return this.postAsync(path, parameters, body, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 postAsync(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.postAsync(path, null, null, requestOptions);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture postAsync(String path) throws AlgoliaRuntimeException {
return this.postAsync(path, null, null, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @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 Object put(String path, Map parameters, Object body, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
return LaunderThrowable.await(putAsync(path, parameters, body, requestOptions));
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object put(String path, Map parameters, Object body) throws AlgoliaRuntimeException {
return this.put(path, parameters, body, null);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 Object put(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.put(path, null, null, requestOptions);
}
/**
* This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public Object put(String path) throws AlgoliaRuntimeException {
return this.put(path, null, null, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @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 putAsync(String path, Map parameters, Object body, RequestOptions requestOptions)
throws AlgoliaRuntimeException {
if (path == null) {
throw new AlgoliaRuntimeException("Parameter `path` is required when calling `put`.");
}
HttpRequest request = HttpRequest
.builder()
.setPathEncoded("/1{path}", path)
.setMethod("PUT")
.setBody(body)
.addQueryParameters(parameters)
.build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @param parameters Query parameters to apply to the current query. (optional)
* @param body Parameters to send with the custom request. (optional)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture putAsync(String path, Map parameters, Object body) throws AlgoliaRuntimeException {
return this.putAsync(path, parameters, body, null);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (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 putAsync(String path, RequestOptions requestOptions) throws AlgoliaRuntimeException {
return this.putAsync(path, null, null, requestOptions);
}
/**
* (asynchronously) This method allow you to send requests to the Algolia REST API.
*
* @param path Path of the endpoint, anything after \"/1\" must be specified. (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture putAsync(String path) throws AlgoliaRuntimeException {
return this.putAsync(path, null, null, null);
}
/**
* Update a QuerySuggestions configuration.
*
* @param indexName Query Suggestions index name. (required)
* @param querySuggestionsConfiguration (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 BaseResponse updateConfig(
String indexName,
QuerySuggestionsConfiguration querySuggestionsConfiguration,
RequestOptions requestOptions
) throws AlgoliaRuntimeException {
return LaunderThrowable.await(updateConfigAsync(indexName, querySuggestionsConfiguration, requestOptions));
}
/**
* Update a QuerySuggestions configuration.
*
* @param indexName Query Suggestions index name. (required)
* @param querySuggestionsConfiguration (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public BaseResponse updateConfig(String indexName, QuerySuggestionsConfiguration querySuggestionsConfiguration)
throws AlgoliaRuntimeException {
return this.updateConfig(indexName, querySuggestionsConfiguration, null);
}
/**
* (asynchronously) Update a QuerySuggestions configuration.
*
* @param indexName Query Suggestions index name. (required)
* @param querySuggestionsConfiguration (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 updateConfigAsync(
String indexName,
QuerySuggestionsConfiguration querySuggestionsConfiguration,
RequestOptions requestOptions
) throws AlgoliaRuntimeException {
if (indexName == null) {
throw new AlgoliaRuntimeException("Parameter `indexName` is required when calling `updateConfig`.");
}
if (querySuggestionsConfiguration == null) {
throw new AlgoliaRuntimeException("Parameter `querySuggestionsConfiguration` is required when calling `updateConfig`.");
}
HttpRequest request = HttpRequest
.builder()
.setPath("/1/configs/{indexName}", indexName)
.setMethod("PUT")
.setBody(querySuggestionsConfiguration)
.build();
return executeAsync(request, requestOptions, new TypeReference() {});
}
/**
* (asynchronously) Update a QuerySuggestions configuration.
*
* @param indexName Query Suggestions index name. (required)
* @param querySuggestionsConfiguration (required)
* @throws AlgoliaRuntimeException If it fails to process the API call
*/
public CompletableFuture updateConfigAsync(String indexName, QuerySuggestionsConfiguration querySuggestionsConfiguration)
throws AlgoliaRuntimeException {
return this.updateConfigAsync(indexName, querySuggestionsConfiguration, null);
}
}