Class AmazonCloudSearchDomainAsyncClient
- All Implemented Interfaces:
AmazonCloudSearchDomain
,AmazonCloudSearchDomainAsync
AsyncHandler
can be
used to receive notification when an asynchronous operation completes.
You use the AmazonCloudSearch2013 API to upload documents to a search domain and search those documents.
The endpoints for submitting UploadDocuments
,
Search
, and Suggest
requests are domain-specific.
To get the endpoints for your domain, use the Amazon CloudSearch
configuration service DescribeDomains
action. The domain
endpoints are also displayed on the domain dashboard in the Amazon
CloudSearch console. You submit suggest requests to the search endpoint.
For more information, see the Amazon CloudSearch Developer Guide.
-
Field Summary
Fields inherited from class com.amazonaws.services.cloudsearchdomain.AmazonCloudSearchDomainClient
configFactory
Fields inherited from class com.amazonaws.AmazonWebServiceClient
client, clientConfiguration, endpoint, LOGGING_AWS_REQUEST_METRIC, requestHandler2s, timeOffset
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain.AmazonCloudSearchDomainAsyncClient
(AWSCredentials awsCredentials) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials.AmazonCloudSearchDomainAsyncClient
(AWSCredentialsProvider awsCredentialsProvider) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials provider.AmazonCloudSearchDomainAsyncClient
(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the provided AWS account credentials provider and client configuration options.AmazonCloudSearchDomainAsyncClient
(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials provider, executor service, and client configuration options.AmazonCloudSearchDomainAsyncClient
(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials provider and executor service.AmazonCloudSearchDomainAsyncClient
(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials, executor service, and client configuration options.AmazonCloudSearchDomainAsyncClient
(AWSCredentials awsCredentials, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials and executor service.AmazonCloudSearchDomainAsyncClient
(ClientConfiguration clientConfiguration) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain. -
Method Summary
Modifier and TypeMethodDescriptionReturns the executor service used by this client to execute async requests.searchAsync
(SearchRequest request) Retrieves a list of documents that match the specified search criteria.searchAsync
(SearchRequest request, AsyncHandler<SearchRequest, SearchResult> asyncHandler) Retrieves a list of documents that match the specified search criteria.void
shutdown()
Shuts down the client, releasing all managed resources.suggestAsync
(SuggestRequest request) Retrieves autocomplete suggestions for a partial query string.suggestAsync
(SuggestRequest request, AsyncHandler<SuggestRequest, SuggestResult> asyncHandler) Retrieves autocomplete suggestions for a partial query string.Posts a batch of documents to a search domain for indexing.uploadDocumentsAsync
(UploadDocumentsRequest request, AsyncHandler<UploadDocumentsRequest, UploadDocumentsResult> asyncHandler) Posts a batch of documents to a search domain for indexing.Methods inherited from class com.amazonaws.services.cloudsearchdomain.AmazonCloudSearchDomainClient
getCachedResponseMetadata, search, suggest, uploadDocuments
Methods inherited from class com.amazonaws.AmazonWebServiceClient
addRequestHandler, addRequestHandler, beforeMarshalling, configureRegion, createExecutionContext, createExecutionContext, createExecutionContext, endClientExecution, endClientExecution, findRequestMetricCollector, getEndpointPrefix, getRequestMetricsCollector, getServiceAbbreviation, getServiceName, getServiceNameIntern, getSigner, getSignerByURI, getSignerRegionOverride, getTimeOffset, isProfilingEnabled, isRequestMetricsEnabled, removeRequestHandler, removeRequestHandler, requestMetricCollector, setEndpoint, setEndpointPrefix, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, withEndpoint, withRegion, withRegion, withTimeOffset
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.amazonaws.services.cloudsearchdomain.AmazonCloudSearchDomain
getCachedResponseMetadata, search, setEndpoint, setRegion, suggest, uploadDocuments
-
Constructor Details
-
AmazonCloudSearchDomainAsyncClient
public AmazonCloudSearchDomainAsyncClient()Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain. 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
- Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
- Instance profile credentials delivered through the Amazon EC2 metadata service
Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).
- See Also:
-
AmazonCloudSearchDomainAsyncClient
Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain. 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
- Credential profiles file at the default location (~/.aws/credentials) shared by all AWS SDKs and the AWS CLI
- Instance profile credentials delivered through the Amazon EC2 metadata service
Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the maximum number of concurrent connections configured via
ClientConfiguration.getMaxConnections()
.- Parameters:
clientConfiguration
- The client configuration options controlling how this client connects to Amazon CloudSearch Domain (ex: proxy settings, retry counts, etc).- See Also:
-
AmazonCloudSearchDomainAsyncClient
Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials.Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).
- Parameters:
awsCredentials
- The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.- See Also:
-
AmazonCloudSearchDomainAsyncClient
public AmazonCloudSearchDomainAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials and executor service. Default client settings will be used.- Parameters:
awsCredentials
- The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.executorService
- The executor service by which all asynchronous requests will be executed.
-
AmazonCloudSearchDomainAsyncClient
public AmazonCloudSearchDomainAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials, executor service, and client configuration options.- Parameters:
awsCredentials
- The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.clientConfiguration
- Client configuration options (ex: max retry limit, proxy settings, etc).executorService
- The executor service by which all asynchronous requests will be executed.
-
AmazonCloudSearchDomainAsyncClient
Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials provider. Default client settings will be used.Asynchronous methods are delegated to a fixed-size thread pool containing 50 threads (to match the default maximum number of concurrent connections to the service).
- Parameters:
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.- See Also:
-
AmazonCloudSearchDomainAsyncClient
public AmazonCloudSearchDomainAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the provided AWS account credentials provider and client configuration options.Asynchronous methods are delegated to a fixed-size thread pool containing a number of threads equal to the maximum number of concurrent connections configured via
ClientConfiguration.getMaxConnections()
.- Parameters:
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.clientConfiguration
- Client configuration options (ex: max retry limit, proxy settings, etc).- See Also:
-
AmazonCloudSearchDomainAsyncClient
public AmazonCloudSearchDomainAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials provider and executor service. Default client settings will be used.- Parameters:
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.executorService
- The executor service by which all asynchronous requests will be executed.
-
AmazonCloudSearchDomainAsyncClient
public AmazonCloudSearchDomainAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService) Constructs a new asynchronous client to invoke service methods on Amazon CloudSearch Domain using the specified AWS account credentials provider, executor service, and client configuration options.- Parameters:
awsCredentialsProvider
- The AWS credentials provider which will provide credentials to authenticate requests with AWS services.clientConfiguration
- Client configuration options (ex: max retry limit, proxy settings, etc).executorService
- The executor service by which all asynchronous requests will be executed.
-
-
Method Details
-
getExecutorService
Returns the executor service used by this client to execute async requests.- Returns:
- The executor service used by this client to execute async requests.
-
searchAsync
Description copied from interface:AmazonCloudSearchDomainAsync
Retrieves a list of documents that match the specified search criteria. How you specify the search criteria depends on which query parser you use. Amazon CloudSearch supports four query parsers:
simple
: search alltext
andtext-array
fields for the specified string. Search for phrases, individual terms, and prefixes.structured
: search specific fields, construct compound queries using Boolean operators, and use advanced features such as term boosting and proximity searching.lucene
: specify search criteria using the Apache Lucene query parser syntax.dismax
: specify search criteria using the simplified subset of the Apache Lucene query parser syntax defined by the DisMax query parser.
For more information, see Searching Your Data in the Amazon CloudSearch Developer Guide.
The endpoint for submitting
Search
requests is domain-specific. You submit search requests to a domain's search endpoint. To get the search endpoint for your domain, use the Amazon CloudSearch configuration serviceDescribeDomains
action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.- Specified by:
searchAsync
in interfaceAmazonCloudSearchDomainAsync
- Parameters:
request
- Container for the parameters to theSearch
request.- Returns:
- A Java Future containing the result of the Search operation returned by the service.
-
searchAsync
public Future<SearchResult> searchAsync(SearchRequest request, AsyncHandler<SearchRequest, SearchResult> asyncHandler) Description copied from interface:AmazonCloudSearchDomainAsync
Retrieves a list of documents that match the specified search criteria. How you specify the search criteria depends on which query parser you use. Amazon CloudSearch supports four query parsers:
simple
: search alltext
andtext-array
fields for the specified string. Search for phrases, individual terms, and prefixes.structured
: search specific fields, construct compound queries using Boolean operators, and use advanced features such as term boosting and proximity searching.lucene
: specify search criteria using the Apache Lucene query parser syntax.dismax
: specify search criteria using the simplified subset of the Apache Lucene query parser syntax defined by the DisMax query parser.
For more information, see Searching Your Data in the Amazon CloudSearch Developer Guide.
The endpoint for submitting
Search
requests is domain-specific. You submit search requests to a domain's search endpoint. To get the search endpoint for your domain, use the Amazon CloudSearch configuration serviceDescribeDomains
action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.- Specified by:
searchAsync
in interfaceAmazonCloudSearchDomainAsync
- Parameters:
request
- Container for the parameters to theSearch
request.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the Search operation returned by the service.
-
suggestAsync
Description copied from interface:AmazonCloudSearchDomainAsync
Retrieves autocomplete suggestions for a partial query string. You can use suggestions enable you to display likely matches before users finish typing. In Amazon CloudSearch, suggestions are based on the contents of a particular text field. When you request suggestions, Amazon CloudSearch finds all of the documents whose values in the suggester field start with the specified query string. The beginning of the field must match the query string to be considered a match.
For more information about configuring suggesters and retrieving suggestions, see Getting Suggestions in the Amazon CloudSearch Developer Guide.
The endpoint for submitting
Suggest
requests is domain-specific. You submit suggest requests to a domain's search endpoint. To get the search endpoint for your domain, use the Amazon CloudSearch configuration serviceDescribeDomains
action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.- Specified by:
suggestAsync
in interfaceAmazonCloudSearchDomainAsync
- Parameters:
request
- Container for the parameters to theSuggest
request.- Returns:
- A Java Future containing the result of the Suggest operation returned by the service.
-
suggestAsync
public Future<SuggestResult> suggestAsync(SuggestRequest request, AsyncHandler<SuggestRequest, SuggestResult> asyncHandler) Description copied from interface:AmazonCloudSearchDomainAsync
Retrieves autocomplete suggestions for a partial query string. You can use suggestions enable you to display likely matches before users finish typing. In Amazon CloudSearch, suggestions are based on the contents of a particular text field. When you request suggestions, Amazon CloudSearch finds all of the documents whose values in the suggester field start with the specified query string. The beginning of the field must match the query string to be considered a match.
For more information about configuring suggesters and retrieving suggestions, see Getting Suggestions in the Amazon CloudSearch Developer Guide.
The endpoint for submitting
Suggest
requests is domain-specific. You submit suggest requests to a domain's search endpoint. To get the search endpoint for your domain, use the Amazon CloudSearch configuration serviceDescribeDomains
action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.- Specified by:
suggestAsync
in interfaceAmazonCloudSearchDomainAsync
- Parameters:
request
- Container for the parameters to theSuggest
request.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the Suggest operation returned by the service.
-
uploadDocumentsAsync
Description copied from interface:AmazonCloudSearchDomainAsync
Posts a batch of documents to a search domain for indexing. A document batch is a collection of add and delete operations that represent the documents you want to add, update, or delete from your domain. Batches can be described in either JSON or XML. Each item that you want Amazon CloudSearch to return as a search result (such as a product) is represented as a document. Every document has a unique ID and one or more fields that contain the data that you want to search and return in results. Individual documents cannot contain more than 1 MB of data. The entire batch cannot exceed 5 MB. To get the best possible upload performance, group add and delete operations in batches that are close the 5 MB limit. Submitting a large volume of single-document batches can overload a domain's document service.
The endpoint for submitting
UploadDocuments
requests is domain-specific. To get the document endpoint for your domain, use the Amazon CloudSearch configuration serviceDescribeDomains
action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.For more information about formatting your data for Amazon CloudSearch, see Preparing Your Data in the Amazon CloudSearch Developer Guide. For more information about uploading data for indexing, see Uploading Data in the Amazon CloudSearch Developer Guide.
- Specified by:
uploadDocumentsAsync
in interfaceAmazonCloudSearchDomainAsync
- Parameters:
request
- Container for the parameters to theUploadDocuments
request.- Returns:
- A Java Future containing the result of the UploadDocuments operation returned by the service.
-
uploadDocumentsAsync
public Future<UploadDocumentsResult> uploadDocumentsAsync(UploadDocumentsRequest request, AsyncHandler<UploadDocumentsRequest, UploadDocumentsResult> asyncHandler) Description copied from interface:AmazonCloudSearchDomainAsync
Posts a batch of documents to a search domain for indexing. A document batch is a collection of add and delete operations that represent the documents you want to add, update, or delete from your domain. Batches can be described in either JSON or XML. Each item that you want Amazon CloudSearch to return as a search result (such as a product) is represented as a document. Every document has a unique ID and one or more fields that contain the data that you want to search and return in results. Individual documents cannot contain more than 1 MB of data. The entire batch cannot exceed 5 MB. To get the best possible upload performance, group add and delete operations in batches that are close the 5 MB limit. Submitting a large volume of single-document batches can overload a domain's document service.
The endpoint for submitting
UploadDocuments
requests is domain-specific. To get the document endpoint for your domain, use the Amazon CloudSearch configuration serviceDescribeDomains
action. A domain's endpoints are also displayed on the domain dashboard in the Amazon CloudSearch console.For more information about formatting your data for Amazon CloudSearch, see Preparing Your Data in the Amazon CloudSearch Developer Guide. For more information about uploading data for indexing, see Uploading Data in the Amazon CloudSearch Developer Guide.
- Specified by:
uploadDocumentsAsync
in interfaceAmazonCloudSearchDomainAsync
- Parameters:
request
- Container for the parameters to theUploadDocuments
request.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.- Returns:
- A Java Future containing the result of the UploadDocuments operation returned by the service.
-
shutdown
public void shutdown()Shuts down the client, releasing all managed resources. This includes forcibly terminating all pending asynchronous service calls. Clients who wish to give pending asynchronous service calls time to complete should callgetExecutorService().shutdown()
followed bygetExecutorService().awaitTermination()
prior to calling this method.- Specified by:
shutdown
in interfaceAmazonCloudSearchDomain
- Overrides:
shutdown
in classAmazonWebServiceClient
-