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

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

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 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.cloudsearchv2;

import org.w3c.dom.*;

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

import org.apache.commons.logging.*;

import com.amazonaws.*;
import com.amazonaws.auth.*;
import com.amazonaws.handlers.*;
import com.amazonaws.http.*;
import com.amazonaws.internal.*;
import com.amazonaws.internal.auth.*;
import com.amazonaws.metrics.*;
import com.amazonaws.regions.*;
import com.amazonaws.transform.*;
import com.amazonaws.util.*;
import com.amazonaws.protocol.json.*;
import com.amazonaws.util.AWSRequestMetrics.Field;
import com.amazonaws.annotation.ThreadSafe;
import com.amazonaws.client.AwsSyncClientParams;
import com.amazonaws.AmazonServiceException;

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

/**
 * Client for accessing Amazon CloudSearch. 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 Amazon CloudSearch 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. *

*/ @ThreadSafe public class AmazonCloudSearchClient extends AmazonWebServiceClient implements AmazonCloudSearch { /** Provider for AWS credentials. */ private final AWSCredentialsProvider awsCredentialsProvider; private static final Log log = LogFactory.getLog(AmazonCloudSearch.class); /** Default signing name for the service. */ private static final String DEFAULT_SIGNING_NAME = "cloudsearch"; /** * Client configuration factory providing ClientConfigurations tailored to * this client */ protected static final ClientConfigurationFactory configFactory = new ClientConfigurationFactory(); /** * List of exception unmarshallers for all modeled exceptions */ protected final List> exceptionUnmarshallers = new ArrayList>(); /** * Constructs a new client to invoke service methods on Amazon CloudSearch. * 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(), configFactory .getConfig()); } /** * Constructs a new client to invoke service methods on Amazon CloudSearch. * 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 Amazon CloudSearch (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 Amazon CloudSearch * 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, configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on Amazon CloudSearch * 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 Amazon CloudSearch (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 Amazon CloudSearch * 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, configFactory.getConfig()); } /** * Constructs a new client to invoke service methods on Amazon CloudSearch * 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 Amazon CloudSearch (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 Amazon CloudSearch * 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 Amazon CloudSearch (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(); } /** * Constructs a new client to invoke service methods on Amazon CloudSearch * using the specified parameters. * *

* All service calls made using this new client object are blocking, and * will not return until the service call completes. * * @param clientParams * Object providing client parameters. */ AmazonCloudSearchClient(AwsSyncClientParams clientParams) { super(clientParams); this.awsCredentialsProvider = clientParams.getCredentialsProvider(); init(); } private void init() { exceptionUnmarshallers .add(new DisabledOperationExceptionUnmarshaller()); exceptionUnmarshallers.add(new ResourceNotFoundExceptionUnmarshaller()); exceptionUnmarshallers.add(new BaseExceptionUnmarshaller()); exceptionUnmarshallers.add(new InternalExceptionUnmarshaller()); exceptionUnmarshallers.add(new LimitExceededExceptionUnmarshaller()); exceptionUnmarshallers.add(new InvalidTypeExceptionUnmarshaller()); exceptionUnmarshallers .add(new StandardErrorUnmarshaller( com.amazonaws.services.cloudsearchv2.model.AmazonCloudSearchException.class)); setServiceNameIntern(DEFAULT_SIGNING_NAME); setEndpointPrefix(ENDPOINT_PREFIX); // calling this.setEndPoint(...) will also modify the signer accordingly this.setEndpoint("https://cloudsearch.us-east-1.amazonaws.com/"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s .addAll(chainFactory .newRequestHandlerChain("/com/amazonaws/services/cloudsearchv2/request.handlers")); requestHandler2s .addAll(chainFactory .newRequestHandler2Chain("/com/amazonaws/services/cloudsearchv2/request.handler2s")); } /** *

* Indexes the search suggestions. For more information, see Configuring Suggesters in the Amazon CloudSearch Developer * Guide. *

* * @param buildSuggestersRequest * Container for the parameters to the * BuildSuggester operation. Specifies the name * of the domain you want to update. * @return Result of the BuildSuggesters operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.BuildSuggesters */ @Override public BuildSuggestersResult buildSuggesters( BuildSuggestersRequest buildSuggestersRequest) { ExecutionContext executionContext = createExecutionContext(buildSuggestersRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new BuildSuggestersRequestMarshaller().marshall(super .beforeMarshalling(buildSuggestersRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new BuildSuggestersResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a new search domain. For more information, see Creating a Search Domain in the Amazon CloudSearch * Developer Guide. *

* * @param createDomainRequest * Container for the parameters to the * CreateDomain operation. Specifies a name for * the new search domain. * @return Result of the CreateDomain operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @sample AmazonCloudSearch.CreateDomain */ @Override public CreateDomainResult createDomain( CreateDomainRequest createDomainRequest) { ExecutionContext executionContext = createExecutionContext(createDomainRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateDomainRequestMarshaller().marshall(super .beforeMarshalling(createDomainRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new CreateDomainResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures an analysis scheme that can be applied to a text * or text-array field to define language-specific text * processing options. For more information, see Configuring Analysis Schemes in the Amazon * CloudSearch Developer Guide. *

* * @param defineAnalysisSchemeRequest * Container for the parameters to the * DefineAnalysisScheme operation. Specifies the * name of the domain you want to update and the analysis scheme * configuration. * @return Result of the DefineAnalysisScheme operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DefineAnalysisScheme */ @Override public DefineAnalysisSchemeResult defineAnalysisScheme( DefineAnalysisSchemeRequest defineAnalysisSchemeRequest) { ExecutionContext executionContext = createExecutionContext(defineAnalysisSchemeRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DefineAnalysisSchemeRequestMarshaller() .marshall(super .beforeMarshalling(defineAnalysisSchemeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DefineAnalysisSchemeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures an Expression for the search domain. Used * to create new expressions and modify existing ones. If the expression * exists, the new configuration replaces the old one. For more information, * see Configuring Expressions in the Amazon CloudSearch * Developer Guide. *

* * @param defineExpressionRequest * Container for the parameters to the * DefineExpression operation. Specifies the name * of the domain you want to update and the expression you want to * configure. * @return Result of the DefineExpression operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DefineExpression */ @Override public DefineExpressionResult defineExpression( DefineExpressionRequest defineExpressionRequest) { ExecutionContext executionContext = createExecutionContext(defineExpressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DefineExpressionRequestMarshaller() .marshall(super .beforeMarshalling(defineExpressionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DefineExpressionResultStaxUnmarshaller()); response = invoke(request, responseHandler, 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. You must specify the name * of the domain you are configuring and an index field configuration. The * index field configuration specifies a unique name, the index field type, * and the options you want to configure for the field. The options you can * specify depend on the IndexFieldType. If the field * exists, the new configuration replaces the old one. For more information, * see Configuring Index Fields in the Amazon CloudSearch * Developer Guide. *

* * @param defineIndexFieldRequest * Container for the parameters to the * DefineIndexField operation. Specifies the name * of the domain you want to update and the index field * configuration. * @return Result of the DefineIndexField operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DefineIndexField */ @Override public DefineIndexFieldResult defineIndexField( DefineIndexFieldRequest defineIndexFieldRequest) { ExecutionContext executionContext = createExecutionContext(defineIndexFieldRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DefineIndexFieldRequestMarshaller() .marshall(super .beforeMarshalling(defineIndexFieldRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DefineIndexFieldResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures a suggester for a domain. A suggester enables you to display * possible matches before users finish typing their queries. When you * configure a suggester, you must specify the name of the text field you * want to search for possible matches and a unique name for the suggester. * For more information, see Getting Search Suggestions in the Amazon * CloudSearch Developer Guide. *

* * @param defineSuggesterRequest * Container for the parameters to the * DefineSuggester operation. Specifies the name * of the domain you want to update and the suggester configuration. * @return Result of the DefineSuggester operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DefineSuggester */ @Override public DefineSuggesterResult defineSuggester( DefineSuggesterRequest defineSuggesterRequest) { ExecutionContext executionContext = createExecutionContext(defineSuggesterRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DefineSuggesterRequestMarshaller().marshall(super .beforeMarshalling(defineSuggesterRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DefineSuggesterResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes an analysis scheme. For more information, see Configuring Analysis Schemes in the Amazon * CloudSearch Developer Guide. *

* * @param deleteAnalysisSchemeRequest * Container for the parameters to the * DeleteAnalysisScheme operation. Specifies the * name of the domain you want to update and the analysis scheme you * want to delete. * @return Result of the DeleteAnalysisScheme operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DeleteAnalysisScheme */ @Override public DeleteAnalysisSchemeResult deleteAnalysisScheme( DeleteAnalysisSchemeRequest deleteAnalysisSchemeRequest) { ExecutionContext executionContext = createExecutionContext(deleteAnalysisSchemeRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteAnalysisSchemeRequestMarshaller() .marshall(super .beforeMarshalling(deleteAnalysisSchemeRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteAnalysisSchemeResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Permanently deletes a search domain and all of its data. Once a domain * has been deleted, it cannot be recovered. For more information, see Deleting a Search Domain in the Amazon CloudSearch * Developer Guide. *

* * @param deleteDomainRequest * Container for the parameters to the * DeleteDomain operation. Specifies the name of * the domain you want to delete. * @return Result of the DeleteDomain operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @sample AmazonCloudSearch.DeleteDomain */ @Override public DeleteDomainResult deleteDomain( DeleteDomainRequest deleteDomainRequest) { ExecutionContext executionContext = createExecutionContext(deleteDomainRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteDomainRequestMarshaller().marshall(super .beforeMarshalling(deleteDomainRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteDomainResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes an Expression from the search domain. For * more information, see Configuring Expressions in the Amazon CloudSearch * Developer Guide. *

* * @param deleteExpressionRequest * Container for the parameters to the * DeleteExpression operation. Specifies the name * of the domain you want to update and the name of the expression * you want to delete. * @return Result of the DeleteExpression operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DeleteExpression */ @Override public DeleteExpressionResult deleteExpression( DeleteExpressionRequest deleteExpressionRequest) { ExecutionContext executionContext = createExecutionContext(deleteExpressionRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteExpressionRequestMarshaller() .marshall(super .beforeMarshalling(deleteExpressionRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteExpressionResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Removes an IndexField from the search domain. For * more information, see Configuring Index Fields in the Amazon CloudSearch * Developer Guide. *

* * @param deleteIndexFieldRequest * Container for the parameters to the * DeleteIndexField operation. Specifies the name * of the domain you want to update and the name of the index field * you want to delete. * @return Result of the DeleteIndexField operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DeleteIndexField */ @Override public DeleteIndexFieldResult deleteIndexField( DeleteIndexFieldRequest deleteIndexFieldRequest) { ExecutionContext executionContext = createExecutionContext(deleteIndexFieldRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteIndexFieldRequestMarshaller() .marshall(super .beforeMarshalling(deleteIndexFieldRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteIndexFieldResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a suggester. For more information, see Getting Search Suggestions in the Amazon * CloudSearch Developer Guide. *

* * @param deleteSuggesterRequest * Container for the parameters to the * DeleteSuggester operation. Specifies the name * of the domain you want to update and name of the suggester you * want to delete. * @return Result of the DeleteSuggester operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DeleteSuggester */ @Override public DeleteSuggesterResult deleteSuggester( DeleteSuggesterRequest deleteSuggesterRequest) { ExecutionContext executionContext = createExecutionContext(deleteSuggesterRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteSuggesterRequestMarshaller().marshall(super .beforeMarshalling(deleteSuggesterRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DeleteSuggesterResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the analysis schemes configured for a domain. An analysis scheme * defines language-specific text processing options for a text * field. Can be limited to specific analysis schemes by name. By default, * shows all analysis schemes and includes any pending changes to the * configuration. Set the Deployed option to true * to show the active configuration and exclude pending changes. For more * information, see Configuring Analysis Schemes in the Amazon * CloudSearch Developer Guide. *

* * @param describeAnalysisSchemesRequest * Container for the parameters to the * DescribeAnalysisSchemes operation. Specifies * the name of the domain you want to describe. To limit the response * to particular analysis schemes, specify the names of the analysis * schemes you want to describe. To show the active configuration and * exclude any pending changes, set the Deployed option * to true. * @return Result of the DescribeAnalysisSchemes operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DescribeAnalysisSchemes */ @Override public DescribeAnalysisSchemesResult describeAnalysisSchemes( DescribeAnalysisSchemesRequest describeAnalysisSchemesRequest) { ExecutionContext executionContext = createExecutionContext(describeAnalysisSchemesRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAnalysisSchemesRequestMarshaller() .marshall(super .beforeMarshalling(describeAnalysisSchemesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeAnalysisSchemesResultStaxUnmarshaller()); response = invoke(request, responseHandler, 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 parameters to the * DescribeAvailabilityOptions operation. * Specifies the name of the domain you want to describe. To show the * active configuration and exclude any pending changes, set the * Deployed option to true. * @return Result of the DescribeAvailabilityOptions operation returned by * the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @throws DisabledOperationException * The request was rejected because it attempted an operation which * is not enabled. * @sample AmazonCloudSearch.DescribeAvailabilityOptions */ @Override public DescribeAvailabilityOptionsResult describeAvailabilityOptions( DescribeAvailabilityOptionsRequest describeAvailabilityOptionsRequest) { ExecutionContext executionContext = createExecutionContext(describeAvailabilityOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeAvailabilityOptionsRequestMarshaller() .marshall(super .beforeMarshalling(describeAvailabilityOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeAvailabilityOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, 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. To get the * number of searchable documents in a domain, use the console or submit a * matchall request to your domain's search endpoint: * q=matchall&q.parser=structured&size=0. For * more information, see Getting Information about a Search Domain in the * Amazon CloudSearch Developer Guide. *

* * @param describeDomainsRequest * Container for the parameters to the * DescribeDomains operation. By default shows * the status of all domains. To restrict the response to particular * domains, specify the names of the domains you want to describe. * @return Result of the DescribeDomains operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @sample AmazonCloudSearch.DescribeDomains */ @Override public DescribeDomainsResult describeDomains( DescribeDomainsRequest describeDomainsRequest) { ExecutionContext executionContext = createExecutionContext(describeDomainsRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeDomainsRequestMarshaller().marshall(super .beforeMarshalling(describeDomainsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeDomainsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public DescribeDomainsResult describeDomains() { return describeDomains(new DescribeDomainsRequest()); } /** *

* Gets the expressions configured for the search domain. Can be limited to * specific expressions by name. By default, shows all expressions and * includes any pending changes to the configuration. Set the * Deployed option to true to show the active * configuration and exclude pending changes. For more information, see Configuring Expressions in the Amazon CloudSearch * Developer Guide. *

* * @param describeExpressionsRequest * Container for the parameters to the * DescribeDomains operation. Specifies the name * of the domain you want to describe. To restrict the response to * particular expressions, specify the names of the expressions you * want to describe. To show the active configuration and exclude any * pending changes, set the Deployed option to * true. * @return Result of the DescribeExpressions operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DescribeExpressions */ @Override public DescribeExpressionsResult describeExpressions( DescribeExpressionsRequest describeExpressionsRequest) { ExecutionContext executionContext = createExecutionContext(describeExpressionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeExpressionsRequestMarshaller() .marshall(super .beforeMarshalling(describeExpressionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeExpressionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, 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. By default, shows all fields * and includes any pending changes to the configuration. Set the * Deployed option to true to show the active * configuration and exclude pending changes. For more information, see Getting Domain Information in the Amazon * CloudSearch Developer Guide. *

* * @param describeIndexFieldsRequest * Container for the parameters to the * DescribeIndexFields operation. Specifies the * name of the domain you want to describe. To restrict the response * to particular index fields, specify the names of the index fields * you want to describe. To show the active configuration and exclude * any pending changes, set the Deployed option to * true. * @return Result of the DescribeIndexFields operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DescribeIndexFields */ @Override public DescribeIndexFieldsResult describeIndexFields( DescribeIndexFieldsRequest describeIndexFieldsRequest) { ExecutionContext executionContext = createExecutionContext(describeIndexFieldsRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeIndexFieldsRequestMarshaller() .marshall(super .beforeMarshalling(describeIndexFieldsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeIndexFieldsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the scaling parameters configured for a domain. A domain's scaling * parameters specify the desired search instance type and replication * count. For more information, see Configuring Scaling Options in the Amazon * CloudSearch Developer Guide. *

* * @param describeScalingParametersRequest * Container for the parameters to the * DescribeScalingParameters operation. Specifies * the name of the domain you want to describe. * @return Result of the DescribeScalingParameters operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DescribeScalingParameters */ @Override public DescribeScalingParametersResult describeScalingParameters( DescribeScalingParametersRequest describeScalingParametersRequest) { ExecutionContext executionContext = createExecutionContext(describeScalingParametersRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeScalingParametersRequestMarshaller() .marshall(super .beforeMarshalling(describeScalingParametersRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeScalingParametersResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets information about the access policies that control access to the * domain's document and search endpoints. 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 Access for a Search Domain in the * Amazon CloudSearch Developer Guide. *

* * @param describeServiceAccessPoliciesRequest * Container for the parameters to the * DescribeServiceAccessPolicies operation. * Specifies the name of the domain you want to describe. To show the * active configuration and exclude any pending changes, set the * Deployed option to true. * @return Result of the DescribeServiceAccessPolicies operation returned by * the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DescribeServiceAccessPolicies */ @Override public DescribeServiceAccessPoliciesResult describeServiceAccessPolicies( DescribeServiceAccessPoliciesRequest describeServiceAccessPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(describeServiceAccessPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeServiceAccessPoliciesRequestMarshaller() .marshall(super .beforeMarshalling(describeServiceAccessPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeServiceAccessPoliciesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the suggesters configured for a domain. A suggester enables you to * display possible matches before users finish typing their queries. Can be * limited to specific suggesters by name. By default, shows all suggesters * and includes any pending changes to the configuration. Set the * Deployed option to true to show the active * configuration and exclude pending changes. For more information, see Getting Search Suggestions in the Amazon * CloudSearch Developer Guide. *

* * @param describeSuggestersRequest * Container for the parameters to the * DescribeSuggester operation. Specifies the * name of the domain you want to describe. To restrict the response * to particular suggesters, specify the names of the suggesters you * want to describe. To show the active configuration and exclude any * pending changes, set the Deployed option to * true. * @return Result of the DescribeSuggesters operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.DescribeSuggesters */ @Override public DescribeSuggestersResult describeSuggesters( DescribeSuggestersRequest describeSuggestersRequest) { ExecutionContext executionContext = createExecutionContext(describeSuggestersRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DescribeSuggestersRequestMarshaller() .marshall(super .beforeMarshalling(describeSuggestersRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new DescribeSuggestersResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Tells the search domain to start indexing its documents using the latest * indexing options. This operation must be invoked to activate options * whose OptionStatus is RequiresIndexDocuments. *

* * @param indexDocumentsRequest * Container for the parameters to the * IndexDocuments operation. Specifies the name * of the domain you want to re-index. * @return Result of the IndexDocuments operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @sample AmazonCloudSearch.IndexDocuments */ @Override public IndexDocumentsResult indexDocuments( IndexDocumentsRequest indexDocumentsRequest) { ExecutionContext executionContext = createExecutionContext(indexDocumentsRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new IndexDocumentsRequestMarshaller().marshall(super .beforeMarshalling(indexDocumentsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new IndexDocumentsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists all search domains owned by an account. *

* * @param listDomainNamesRequest * @return Result of the ListDomainNames operation returned by the service. * @throws BaseException * An error occurred while processing the request. * @sample AmazonCloudSearch.ListDomainNames */ @Override public ListDomainNamesResult listDomainNames( ListDomainNamesRequest listDomainNamesRequest) { ExecutionContext executionContext = createExecutionContext(listDomainNamesRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListDomainNamesRequestMarshaller().marshall(super .beforeMarshalling(listDomainNamesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new ListDomainNamesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } @Override public ListDomainNamesResult listDomainNames() { return listDomainNames(new ListDomainNamesRequest()); } /** *

* 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 parameters to the * UpdateAvailabilityOptions operation. Specifies * the name of the domain you want to update and the Multi-AZ * availability option. * @return Result of the UpdateAvailabilityOptions operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @throws DisabledOperationException * The request was rejected because it attempted an operation which * is not enabled. * @sample AmazonCloudSearch.UpdateAvailabilityOptions */ @Override public UpdateAvailabilityOptionsResult updateAvailabilityOptions( UpdateAvailabilityOptionsRequest updateAvailabilityOptionsRequest) { ExecutionContext executionContext = createExecutionContext(updateAvailabilityOptionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateAvailabilityOptionsRequestMarshaller() .marshall(super .beforeMarshalling(updateAvailabilityOptionsRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UpdateAvailabilityOptionsResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures scaling parameters for a domain. A domain's scaling parameters * specify the desired search instance type and replication count. Amazon * CloudSearch will still automatically scale your domain based on the * volume of data and traffic, but not below the desired instance type and * replication count. If the Multi-AZ option is enabled, these values * control the resources used per Availability Zone. For more information, * see Configuring Scaling Options in the Amazon * CloudSearch Developer Guide. *

* * @param updateScalingParametersRequest * Container for the parameters to the * UpdateScalingParameters operation. Specifies * the name of the domain you want to update and the scaling * parameters you want to configure. * @return Result of the UpdateScalingParameters operation returned by the * service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @sample AmazonCloudSearch.UpdateScalingParameters */ @Override public UpdateScalingParametersResult updateScalingParameters( UpdateScalingParametersRequest updateScalingParametersRequest) { ExecutionContext executionContext = createExecutionContext(updateScalingParametersRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateScalingParametersRequestMarshaller() .marshall(super .beforeMarshalling(updateScalingParametersRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UpdateScalingParametersResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Configures the access rules that control access to the domain's document * and search endpoints. For more information, see Configuring Access for an Amazon CloudSearch Domain. *

* * @param updateServiceAccessPoliciesRequest * Container for the parameters to the * UpdateServiceAccessPolicies operation. * Specifies the name of the domain you want to update and the access * rules you want to configure. * @return Result of the UpdateServiceAccessPolicies operation returned by * the service. * @throws BaseException * An error occurred while processing the request. * @throws InternalException * An internal error occurred while processing the request. If this * problem persists, report an issue from the Service * Health Dashboard. * @throws LimitExceededException * The request was rejected because a resource limit has already * been met. * @throws ResourceNotFoundException * The request was rejected because it attempted to reference a * resource that does not exist. * @throws InvalidTypeException * The request was rejected because it specified an invalid type * definition. * @sample AmazonCloudSearch.UpdateServiceAccessPolicies */ @Override public UpdateServiceAccessPoliciesResult updateServiceAccessPolicies( UpdateServiceAccessPoliciesRequest updateServiceAccessPoliciesRequest) { ExecutionContext executionContext = createExecutionContext(updateServiceAccessPoliciesRequest); AWSRequestMetrics awsRequestMetrics = executionContext .getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateServiceAccessPoliciesRequestMarshaller() .marshall(super .beforeMarshalling(updateServiceAccessPoliciesRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } StaxResponseHandler responseHandler = new StaxResponseHandler( new UpdateServiceAccessPoliciesResultStaxUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** * 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); } /** * Normal invoke with authentication. Credentials are required and may be * overriden at the request level. **/ private Response invoke( Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { executionContext.setCredentialsProvider(CredentialUtils .getCredentialsProvider(request.getOriginalRequest(), awsCredentialsProvider)); return doInvoke(request, responseHandler, executionContext); } /** * Invoke with no authentication. Credentials are not required and any * credentials set on the client or request will be ignored for this * operation. **/ private Response anonymousInvoke( Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return doInvoke(request, responseHandler, executionContext); } /** * Invoke the request using the http client. Assumes credentials (or lack * thereof) have been configured in the ExecutionContext beforehand. **/ private Response doInvoke( Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { request.setEndpoint(endpoint); request.setTimeOffset(timeOffset); DefaultErrorResponseHandler errorResponseHandler = new DefaultErrorResponseHandler( exceptionUnmarshallers); return client.execute(request, responseHandler, errorResponseHandler, executionContext); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy