All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.cloudsearch.AmazonCloudSearchClient Maven / Gradle / Ivy

/*
 * Copyright 2010-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 *
 *  http://aws.amazon.com/apache2.0
 *
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.cloudsearch;

import org.w3c.dom.*;

import java.net.*;
import java.util.*;
import java.util.Map.Entry;

import com.amazonaws.*;
import com.amazonaws.auth.*;
import com.amazonaws.handlers.*;
import com.amazonaws.http.*;
import com.amazonaws.internal.*;
import com.amazonaws.metrics.*;
import com.amazonaws.regions.*;
import com.amazonaws.transform.*;
import com.amazonaws.util.*;
import com.amazonaws.util.AWSRequestMetrics.Field;

import com.amazonaws.services.cloudsearch.model.*;
import com.amazonaws.services.cloudsearch.model.transform.*;

/**
 * Client for accessing AmazonCloudSearch.  All service calls made
 * using this client are blocking, and will not return until the service call
 * completes.
 * 

* Amazon CloudSearch Configuration Service

* You use the configuration service to create, configure, and manage search domains. Configuration service requests are submitted using the AWS Query * protocol. AWS Query requests are HTTP or HTTPS requests submitted via HTTP GET or POST with a query parameter named Action. *

*

* The endpoint for configuration service requests is region-specific: cloudsearch. region .amazonaws.com. For example, * cloudsearch.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, see Regions and Endpoints . *

* @deprecated This code uses the older version of Amazon Cloud Search API (2011-02-01) and * hence deprecated. The code in the package * {@link com.amazonaws.services.cloudsearchv2} uses the latest * version of Amazon Cloud Search API.Use * {@link com.amazonaws.services.cloudsearchv2.AmazonCloudSearch} * instead. */ @Deprecated public class AmazonCloudSearchClient extends AmazonWebServiceClient implements AmazonCloudSearch { /** Provider for AWS credentials. */ private AWSCredentialsProvider awsCredentialsProvider; /** * List of exception unmarshallers for all AmazonCloudSearch exceptions. */ protected final List> exceptionUnmarshallers = new ArrayList>(); /** * Constructs a new client to invoke service methods on * AmazonCloudSearch. A credentials provider chain will be used * that searches for credentials in this order: *
    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
* *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @see DefaultAWSCredentialsProviderChain */ public AmazonCloudSearchClient() { this(new DefaultAWSCredentialsProviderChain(), new ClientConfiguration()); } /** * Constructs a new client to invoke service methods on * AmazonCloudSearch. A credentials provider chain will be used * that searches for credentials in this order: *

    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
* *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param clientConfiguration The client configuration options controlling how this * client connects to AmazonCloudSearch * (ex: proxy settings, retry counts, etc.). * * @see DefaultAWSCredentialsProviderChain */ public AmazonCloudSearchClient(ClientConfiguration clientConfiguration) { this(new DefaultAWSCredentialsProviderChain(), clientConfiguration); } /** * Constructs a new client to invoke service methods on * AmazonCloudSearch using the specified AWS account credentials. * *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param awsCredentials The AWS credentials (access key ID and secret key) to use * when authenticating with AWS services. */ public AmazonCloudSearchClient(AWSCredentials awsCredentials) { this(awsCredentials, new ClientConfiguration()); } /** * Constructs a new client to invoke service methods on * AmazonCloudSearch using the specified AWS account credentials * and client configuration options. * *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param awsCredentials The AWS credentials (access key ID and secret key) to use * when authenticating with AWS services. * @param clientConfiguration The client configuration options controlling how this * client connects to AmazonCloudSearch * (ex: proxy settings, retry counts, etc.). */ public AmazonCloudSearchClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration) { super(clientConfiguration); this.awsCredentialsProvider = new StaticCredentialsProvider(awsCredentials); init(); } /** * Constructs a new client to invoke service methods on * AmazonCloudSearch using the specified AWS account credentials provider. * *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. */ public AmazonCloudSearchClient(AWSCredentialsProvider awsCredentialsProvider) { this(awsCredentialsProvider, new ClientConfiguration()); } /** * Constructs a new client to invoke service methods on * AmazonCloudSearch using the specified AWS account credentials * provider and client configuration options. * *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. * @param clientConfiguration The client configuration options controlling how this * client connects to AmazonCloudSearch * (ex: proxy settings, retry counts, etc.). */ public AmazonCloudSearchClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) { this(awsCredentialsProvider, clientConfiguration, null); } /** * Constructs a new client to invoke service methods on * AmazonCloudSearch using the specified AWS account credentials * provider, client configuration options, and request metric collector. * *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. * @param clientConfiguration The client configuration options controlling how this * client connects to AmazonCloudSearch * (ex: proxy settings, retry counts, etc.). * @param requestMetricCollector optional request metric collector */ public AmazonCloudSearchClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector) { super(clientConfiguration, requestMetricCollector); this.awsCredentialsProvider = awsCredentialsProvider; init(); } private void init() { exceptionUnmarshallers.add(new ResourceNotFoundExceptionUnmarshaller()); exceptionUnmarshallers.add(new LimitExceededExceptionUnmarshaller()); exceptionUnmarshallers.add(new BaseExceptionUnmarshaller()); exceptionUnmarshallers.add(new DisabledOperationExceptionUnmarshaller()); exceptionUnmarshallers.add(new InvalidTypeExceptionUnmarshaller()); exceptionUnmarshallers.add(new InternalExceptionUnmarshaller()); exceptionUnmarshallers.add(new StandardErrorUnmarshaller()); // calling this.setEndPoint(...) will also modify the signer accordingly this.setEndpoint("cloudsearch.us-east-1.amazonaws.com/"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s.addAll(chainFactory.newRequestHandlerChain( "/com/amazonaws/services/cloudsearch/request.handlers")); requestHandler2s.addAll(chainFactory.newRequestHandler2Chain( "/com/amazonaws/services/cloudsearch/request.handler2s")); } /** *

* Configures the default search field for the search domain. The default * search field is the text field that is searched when a search request * does not specify which fields to search. By default, it is configured * to include the contents of all of the domain's text fields. *

* * @param updateDefaultSearchFieldRequest Container for the necessary * parameters to execute the UpdateDefaultSearchField service method on * AmazonCloudSearch. * * @return The response from the UpdateDefaultSearchField service method, * as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public UpdateDefaultSearchFieldResult updateDefaultSearchField(UpdateDefaultSearchFieldRequest updateDefaultSearchFieldRequest) { ExecutionContext executionContext = createExecutionContext(updateDefaultSearchFieldRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new UpdateDefaultSearchFieldRequestMarshaller().marshall(updateDefaultSearchFieldRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new UpdateDefaultSearchFieldResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes a RankExpression from the search domain. *

* * @param deleteRankExpressionRequest Container for the necessary * parameters to execute the DeleteRankExpression service method on * AmazonCloudSearch. * * @return The response from the DeleteRankExpression service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DeleteRankExpressionResult deleteRankExpression(DeleteRankExpressionRequest deleteRankExpressionRequest) { ExecutionContext executionContext = createExecutionContext(deleteRankExpressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DeleteRankExpressionRequestMarshaller().marshall(deleteRankExpressionRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DeleteRankExpressionResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the rank expressions configured for the search domain. Can be * limited to specific rank expressions by name. Shows all rank * expressions by default. *

* * @param describeRankExpressionsRequest Container for the necessary * parameters to execute the DescribeRankExpressions service method on * AmazonCloudSearch. * * @return The response from the DescribeRankExpressions service method, * as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeRankExpressionsResult describeRankExpressions(DescribeRankExpressionsRequest describeRankExpressionsRequest) { ExecutionContext executionContext = createExecutionContext(describeRankExpressionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeRankExpressionsRequestMarshaller().marshall(describeRankExpressionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeRankExpressionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new search domain. *

* * @param createDomainRequest Container for the necessary parameters to * execute the CreateDomain service method on AmazonCloudSearch. * * @return The response from the CreateDomain service method, as returned * by AmazonCloudSearch. * * @throws BaseException * @throws LimitExceededException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public CreateDomainResult createDomain(CreateDomainRequest createDomainRequest) { ExecutionContext executionContext = createExecutionContext(createDomainRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new CreateDomainRequestMarshaller().marshall(createDomainRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new CreateDomainResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures the policies that control access to the domain's document * and search services. The maximum size of an access policy document is * 100 KB. *

* * @param updateServiceAccessPoliciesRequest Container for the necessary * parameters to execute the UpdateServiceAccessPolicies service method * on AmazonCloudSearch. * * @return The response from the UpdateServiceAccessPolicies service * method, as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public UpdateServiceAccessPoliciesResult updateServiceAccessPolicies(UpdateServiceAccessPoliciesRequest updateServiceAccessPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(updateServiceAccessPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new UpdateServiceAccessPoliciesRequestMarshaller().marshall(updateServiceAccessPoliciesRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new UpdateServiceAccessPoliciesResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures an IndexField for the search domain. Used to * create new fields and modify existing ones. If the field exists, the * new configuration replaces the old one. You can configure a maximum of * 200 index fields. *

* * @param defineIndexFieldRequest Container for the necessary parameters * to execute the DefineIndexField service method on AmazonCloudSearch. * * @return The response from the DefineIndexField service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DefineIndexFieldResult defineIndexField(DefineIndexFieldRequest defineIndexFieldRequest) { ExecutionContext executionContext = createExecutionContext(defineIndexFieldRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DefineIndexFieldRequestMarshaller().marshall(defineIndexFieldRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DefineIndexFieldResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures a RankExpression for the search domain. Used * to create new rank expressions and modify existing ones. If the * expression exists, the new configuration replaces the old one. You can * configure a maximum of 50 rank expressions. *

* * @param defineRankExpressionRequest Container for the necessary * parameters to execute the DefineRankExpression service method on * AmazonCloudSearch. * * @return The response from the DefineRankExpression service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DefineRankExpressionResult defineRankExpression(DefineRankExpressionRequest defineRankExpressionRequest) { ExecutionContext executionContext = createExecutionContext(defineRankExpressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DefineRankExpressionRequestMarshaller().marshall(defineRankExpressionRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DefineRankExpressionResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the synonym dictionary configured for the search domain. *

* * @param describeSynonymOptionsRequest Container for the necessary * parameters to execute the DescribeSynonymOptions service method on * AmazonCloudSearch. * * @return The response from the DescribeSynonymOptions service method, * as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeSynonymOptionsResult describeSynonymOptions(DescribeSynonymOptionsRequest describeSynonymOptionsRequest) { ExecutionContext executionContext = createExecutionContext(describeSynonymOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeSynonymOptionsRequestMarshaller().marshall(describeSynonymOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeSynonymOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the stopwords configured for the search domain. *

* * @param describeStopwordOptionsRequest Container for the necessary * parameters to execute the DescribeStopwordOptions service method on * AmazonCloudSearch. * * @return The response from the DescribeStopwordOptions service method, * as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStopwordOptionsResult describeStopwordOptions(DescribeStopwordOptionsRequest describeStopwordOptionsRequest) { ExecutionContext executionContext = createExecutionContext(describeStopwordOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeStopwordOptionsRequestMarshaller().marshall(describeStopwordOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeStopwordOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Permanently deletes a search domain and all of its data. *

* * @param deleteDomainRequest Container for the necessary parameters to * execute the DeleteDomain service method on AmazonCloudSearch. * * @return The response from the DeleteDomain service method, as returned * by AmazonCloudSearch. * * @throws BaseException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DeleteDomainResult deleteDomain(DeleteDomainRequest deleteDomainRequest) { ExecutionContext executionContext = createExecutionContext(deleteDomainRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DeleteDomainRequestMarshaller().marshall(deleteDomainRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DeleteDomainResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the resource-based policies that control access * to the domain's document and search services. *

* * @param describeServiceAccessPoliciesRequest Container for the * necessary parameters to execute the DescribeServiceAccessPolicies * service method on AmazonCloudSearch. * * @return The response from the DescribeServiceAccessPolicies service * method, as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeServiceAccessPoliciesResult describeServiceAccessPolicies(DescribeServiceAccessPoliciesRequest describeServiceAccessPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(describeServiceAccessPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeServiceAccessPoliciesRequestMarshaller().marshall(describeServiceAccessPoliciesRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeServiceAccessPoliciesResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures the availability options for a domain. Enabling the * Multi-AZ option expands an Amazon CloudSearch domain to an additional * Availability Zone in the same Region to increase fault tolerance in * the event of a service disruption. Changes to the Multi-AZ option can * take about half an hour to become active. For more information, see * Configuring Availability Options * in the Amazon CloudSearch Developer Guide . *

* * @param updateAvailabilityOptionsRequest Container for the necessary * parameters to execute the UpdateAvailabilityOptions service method on * AmazonCloudSearch. * * @return The response from the UpdateAvailabilityOptions service * method, as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws DisabledOperationException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public UpdateAvailabilityOptionsResult updateAvailabilityOptions(UpdateAvailabilityOptionsRequest updateAvailabilityOptionsRequest) { ExecutionContext executionContext = createExecutionContext(updateAvailabilityOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new UpdateAvailabilityOptionsRequestMarshaller().marshall(updateAvailabilityOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new UpdateAvailabilityOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the default search field configured for the search domain. *

* * @param describeDefaultSearchFieldRequest Container for the necessary * parameters to execute the DescribeDefaultSearchField service method on * AmazonCloudSearch. * * @return The response from the DescribeDefaultSearchField service * method, as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeDefaultSearchFieldResult describeDefaultSearchField(DescribeDefaultSearchFieldRequest describeDefaultSearchFieldRequest) { ExecutionContext executionContext = createExecutionContext(describeDefaultSearchFieldRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeDefaultSearchFieldRequestMarshaller().marshall(describeDefaultSearchFieldRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeDefaultSearchFieldResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures stopwords for the search domain. Stopwords are used during * indexing and when processing search requests. The maximum size of the * stopwords dictionary is 10 KB. *

* * @param updateStopwordOptionsRequest Container for the necessary * parameters to execute the UpdateStopwordOptions service method on * AmazonCloudSearch. * * @return The response from the UpdateStopwordOptions service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public UpdateStopwordOptionsResult updateStopwordOptions(UpdateStopwordOptionsRequest updateStopwordOptionsRequest) { ExecutionContext executionContext = createExecutionContext(updateStopwordOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new UpdateStopwordOptionsRequestMarshaller().marshall(updateStopwordOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new UpdateStopwordOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures a synonym dictionary for the search domain. The synonym * dictionary is used during indexing to configure mappings for terms * that occur in text fields. The maximum size of the synonym dictionary * is 100 KB. *

* * @param updateSynonymOptionsRequest Container for the necessary * parameters to execute the UpdateSynonymOptions service method on * AmazonCloudSearch. * * @return The response from the UpdateSynonymOptions service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public UpdateSynonymOptionsResult updateSynonymOptions(UpdateSynonymOptionsRequest updateSynonymOptionsRequest) { ExecutionContext executionContext = createExecutionContext(updateSynonymOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new UpdateSynonymOptionsRequestMarshaller().marshall(updateSynonymOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new UpdateSynonymOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures a stemming dictionary for the search domain. The stemming * dictionary is used during indexing and when processing search * requests. The maximum size of the stemming dictionary is 500 KB. *

* * @param updateStemmingOptionsRequest Container for the necessary * parameters to execute the UpdateStemmingOptions service method on * AmazonCloudSearch. * * @return The response from the UpdateStemmingOptions service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public UpdateStemmingOptionsResult updateStemmingOptions(UpdateStemmingOptionsRequest updateStemmingOptionsRequest) { ExecutionContext executionContext = createExecutionContext(updateStemmingOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new UpdateStemmingOptionsRequestMarshaller().marshall(updateStemmingOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new UpdateStemmingOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the stemming dictionary configured for the search domain. *

* * @param describeStemmingOptionsRequest Container for the necessary * parameters to execute the DescribeStemmingOptions service method on * AmazonCloudSearch. * * @return The response from the DescribeStemmingOptions service method, * as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeStemmingOptionsResult describeStemmingOptions(DescribeStemmingOptionsRequest describeStemmingOptionsRequest) { ExecutionContext executionContext = createExecutionContext(describeStemmingOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeStemmingOptionsRequestMarshaller().marshall(describeStemmingOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeStemmingOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the search domains owned by this account. Can * be limited to specific domains. Shows all domains by default. *

* * @param describeDomainsRequest Container for the necessary parameters * to execute the DescribeDomains service method on AmazonCloudSearch. * * @return The response from the DescribeDomains service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeDomainsResult describeDomains(DescribeDomainsRequest describeDomainsRequest) { ExecutionContext executionContext = createExecutionContext(describeDomainsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeDomainsRequestMarshaller().marshall(describeDomainsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeDomainsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Tells the search domain to start indexing its documents using the * latest text processing options and IndexFields . This * operation must be invoked to make options whose OptionStatus has * OptionState of RequiresIndexDocuments * visible in search results. *

* * @param indexDocumentsRequest Container for the necessary parameters to * execute the IndexDocuments service method on AmazonCloudSearch. * * @return The response from the IndexDocuments service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public IndexDocumentsResult indexDocuments(IndexDocumentsRequest indexDocumentsRequest) { ExecutionContext executionContext = createExecutionContext(indexDocumentsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new IndexDocumentsRequestMarshaller().marshall(indexDocumentsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new IndexDocumentsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the availability options configured for a domain. By default, * shows the configuration with any pending changes. Set the * Deployed option to true to show the active * configuration and exclude pending changes. For more information, see * Configuring Availability Options * in the Amazon CloudSearch Developer Guide . *

* * @param describeAvailabilityOptionsRequest Container for the necessary * parameters to execute the DescribeAvailabilityOptions service method * on AmazonCloudSearch. * * @return The response from the DescribeAvailabilityOptions service * method, as returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws LimitExceededException * @throws InternalException * @throws DisabledOperationException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeAvailabilityOptionsResult describeAvailabilityOptions(DescribeAvailabilityOptionsRequest describeAvailabilityOptionsRequest) { ExecutionContext executionContext = createExecutionContext(describeAvailabilityOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeAvailabilityOptionsRequestMarshaller().marshall(describeAvailabilityOptionsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeAvailabilityOptionsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the index fields configured for the search * domain. Can be limited to specific fields by name. Shows all fields by * default. *

* * @param describeIndexFieldsRequest Container for the necessary * parameters to execute the DescribeIndexFields service method on * AmazonCloudSearch. * * @return The response from the DescribeIndexFields service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeIndexFieldsResult describeIndexFields(DescribeIndexFieldsRequest describeIndexFieldsRequest) { ExecutionContext executionContext = createExecutionContext(describeIndexFieldsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DescribeIndexFieldsRequestMarshaller().marshall(describeIndexFieldsRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DescribeIndexFieldsResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes an IndexField from the search domain. *

* * @param deleteIndexFieldRequest Container for the necessary parameters * to execute the DeleteIndexField service method on AmazonCloudSearch. * * @return The response from the DeleteIndexField service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws ResourceNotFoundException * @throws InternalException * @throws InvalidTypeException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DeleteIndexFieldResult deleteIndexField(DeleteIndexFieldRequest deleteIndexFieldRequest) { ExecutionContext executionContext = createExecutionContext(deleteIndexFieldRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); Request request = null; Response response = null; awsRequestMetrics.startEvent(Field.ClientExecuteTime); try { request = new DeleteIndexFieldRequestMarshaller().marshall(deleteIndexFieldRequest); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); response = invoke(request, new DeleteIndexFieldResultStaxUnmarshaller(), executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the search domains owned by this account. Can * be limited to specific domains. Shows all domains by default. *

* * @return The response from the DescribeDomains service method, as * returned by AmazonCloudSearch. * * @throws BaseException * @throws InternalException * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonCloudSearch indicating * either a problem with the data in the request, or a server side issue. */ public DescribeDomainsResult describeDomains() throws AmazonServiceException, AmazonClientException { return describeDomains(new DescribeDomainsRequest()); } /** * Returns additional metadata for a previously executed successful, request, typically used for * debugging issues where a service isn't acting as expected. This data isn't considered part * of the result data returned by an operation, so it's available through this separate, * diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access * this extra diagnostic information for an executed request, you should use this method * to retrieve it as soon as possible after executing the request. * * @param request * The originally executed request * * @return The response metadata for the specified request, or null if none * is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) { return client.getResponseMetadataForRequest(request); } private Response invoke(Request request, Unmarshaller unmarshaller, ExecutionContext executionContext) { request.setEndpoint(endpoint); request.setTimeOffset(timeOffset); AmazonWebServiceRequest originalRequest = request.getOriginalRequest(); AWSCredentials credentials = awsCredentialsProvider.getCredentials(); if (originalRequest.getRequestCredentials() != null) { credentials = originalRequest.getRequestCredentials(); } executionContext.setCredentials(credentials); StaxResponseHandler responseHandler = new StaxResponseHandler(unmarshaller); DefaultErrorResponseHandler errorResponseHandler = new DefaultErrorResponseHandler(exceptionUnmarshallers); return client.execute(request, responseHandler, errorResponseHandler, executionContext); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy