Class SearchIndexClientBuilder


  • public final class SearchIndexClientBuilder
    extends Object
    This class provides a fluent builder API to help aid the configuration and instantiation of SearchIndexClients and SearchIndexAsyncClients. Call buildClient and buildAsyncClient respectively to construct an instance of the desired client.

    The following must be provided to construct a client instance.

    • The Azure Cognitive Search service URL.
    • An AzureKeyCredential that grants access to the Azure Cognitive Search service.

    Instantiating an asynchronous Search Index Client

     SearchIndexAsyncClient searchIndexAsyncClient = new SearchIndexClientBuilder()
         .credential(new AzureKeyCredential("{key}"))
         .endpoint("{endpoint}")
         .buildAsyncClient();
     

    Instantiating a synchronous Search Index Client

     SearchIndexClient searchIndexClient = new SearchIndexClientBuilder()
         .credential(new AzureKeyCredential("{key}"))
         .endpoint("{endpoint}")
         .buildClient();
     
    See Also:
    SearchIndexClient, SearchIndexAsyncClient
    • Method Detail

      • endpoint

        public SearchIndexClientBuilder endpoint​(String endpoint)
        Sets the service endpoint for the Azure Cognitive Search instance.
        Parameters:
        endpoint - The URL of the Azure Cognitive Search instance.
        Returns:
        The updated SearchIndexClientBuilder object.
        Throws:
        IllegalArgumentException - If endpoint is null or it cannot be parsed into a valid URL.
      • credential

        public SearchIndexClientBuilder credential​(com.azure.core.credential.AzureKeyCredential credential)
        Sets the AzureKeyCredential used to authenticate HTTP requests.
        Parameters:
        credential - The AzureKeyCredential used to authenticate HTTP requests.
        Returns:
        The updated SearchIndexClientBuilder object.
      • credential

        public SearchIndexClientBuilder credential​(com.azure.core.credential.TokenCredential credential)
        Sets the TokenCredential used to authenticate HTTP requests.
        Parameters:
        credential - The TokenCredential used to authenticate HTTP requests.
        Returns:
        The updated SearchIndexClientBuilder object.
      • httpLogOptions

        public SearchIndexClientBuilder httpLogOptions​(com.azure.core.http.policy.HttpLogOptions logOptions)
        Sets the logging configuration for HTTP requests and responses.

        If logging configurations aren't provided HTTP requests and responses won't be logged.

        Parameters:
        logOptions - The logging configuration for HTTP requests and responses.
        Returns:
        The updated SearchIndexClientBuilder object.
      • getDefaultLogOptions

        public static com.azure.core.http.policy.HttpLogOptions getDefaultLogOptions()
        Gets the default Azure Search headers and query parameters allow list.
        Returns:
        The default HttpLogOptions allow list.
      • clientOptions

        public SearchIndexClientBuilder clientOptions​(com.azure.core.util.ClientOptions clientOptions)
        Sets the client options such as application ID and custom headers to set on a request.
        Parameters:
        clientOptions - The client options.
        Returns:
        The updated SearchIndexClientBuilder object.
      • addPolicy

        public SearchIndexClientBuilder addPolicy​(com.azure.core.http.policy.HttpPipelinePolicy policy)
        Adds a pipeline policy to apply to each request sent.

        This method may be called multiple times, each time it is called the policy will be added to the end of added policy list. All policies will be added after the retry policy.

        Parameters:
        policy - The pipeline policies to added to the policy list.
        Returns:
        The updated SearchIndexClientBuilder object.
        Throws:
        NullPointerException - If policy is null.
      • serializer

        public SearchIndexClientBuilder serializer​(com.azure.core.util.serializer.JsonSerializer jsonSerializer)
        Custom JSON serializer that is used to handle model types that are not contained in the Azure Search Documents library.
        Parameters:
        jsonSerializer - The serializer to serialize user defined models.
        Returns:
        The updated SearchIndexClientBuilder object.
      • httpClient

        public SearchIndexClientBuilder httpClient​(com.azure.core.http.HttpClient client)
        Sets the HTTP client to use for sending requests and receiving responses.
        Parameters:
        client - The HTTP client that will handle sending requests and receiving responses.
        Returns:
        The updated SearchIndexClientBuilder object.
      • pipeline

        public SearchIndexClientBuilder pipeline​(com.azure.core.http.HttpPipeline httpPipeline)
        Sets the HTTP pipeline to use for the service client.

        If pipeline is set, all other settings are ignored, aside from endpoint when building a SearchIndexClient or SearchIndexAsyncClient.

        Parameters:
        httpPipeline - The HTTP pipeline to use for sending service requests and receiving responses.
        Returns:
        The updated SearchIndexClientBuilder object.
      • configuration

        public SearchIndexClientBuilder configuration​(com.azure.core.util.Configuration configuration)
        Sets the configuration store that is used during construction of the service client.

        The default configuration store is a clone of the global configuration store, use Configuration.NONE to bypass using configuration settings during construction.

        Parameters:
        configuration - The configuration store that will be used.
        Returns:
        The updated SearchIndexClientBuilder object.
      • retryPolicy

        public SearchIndexClientBuilder retryPolicy​(com.azure.core.http.policy.RetryPolicy retryPolicy)
        Sets the HttpPipelinePolicy that will attempt to retry requests when needed.

        A default retry policy will be supplied if one isn't provided.

        Parameters:
        retryPolicy - The RetryPolicy that will attempt to retry requests when needed.
        Returns:
        The updated SearchIndexClientBuilder object.
      • serviceVersion

        public SearchIndexClientBuilder serviceVersion​(SearchServiceVersion serviceVersion)
        Sets the SearchServiceVersion that is used when making API requests.

        If a service version is not provided, SearchServiceVersion.getLatest() will be used as a default. When this default is used updating to a newer client library may result in a newer version of the service being used.

        Parameters:
        serviceVersion - The version of the service to be used when making requests.
        Returns:
        The updated SearchIndexClientBuilder object.