SearchIndexingBufferedSenderBuilder<T> Class
- java.
lang. Object - com.
azure. search. documents. SearchIndexingBufferedSenderBuilder<T>
- com.
Type Parameters
- T
The type of the document that the buffered sender will use.
Implements
public final class SearchIndexingBufferedSenderBuilder<T>
implements HttpTrait<SearchIndexingBufferedSenderBuilder<T>>, ConfigurationTrait<SearchIndexingBufferedSenderBuilder<T>>, TokenCredentialTrait<SearchIndexingBufferedSenderBuilder<T>>, KeyCredentialTrait<SearchIndexingBufferedSenderBuilder<T>>, EndpointTrait<SearchIndexingBufferedSenderBuilder<T>>
This class provides a fluent builder API to help aid the configuration and instantiation of SearchIndexingBufferedSender<T> and SearchIndexingBufferedAsyncSender<T>. Call buildSender() and buildAsyncSender() respectively to construct an instance of the desired sender.
Constructor Summary
| Constructor | Description |
|---|---|
| SearchIndexingBufferedSenderBuilder() |
Creates a new instance of SearchIndexingBufferedSenderBuilder<T>. |
Method Summary
Methods inherited from java.lang.Object
Constructor Details
SearchIndexingBufferedSenderBuilder
public SearchIndexingBufferedSenderBuilder()
Creates a new instance of SearchIndexingBufferedSenderBuilder<T>.
Method Details
addPolicy
public SearchIndexingBufferedSenderBuilder<T> addPolicy(HttpPipelinePolicy customPolicy)
.
Parameters:
audience
public SearchIndexingBufferedSenderBuilder<T> audience(SearchAudience audience)
Sets the Audience to use for authentication with Microsoft Entra ID.
If audience is null the public cloud audience will be assumed.
Parameters:
Returns:
autoFlush
public SearchIndexingBufferedSenderBuilder<T> autoFlush(boolean autoFlush)
Sets the flag determining whether a buffered sender will automatically flush its document batch based on the configurations of autoFlushInterval(Duration autoFlushInterval) and initialBatchActionCount(int initialBatchActionCount).
Parameters:
Returns:
autoFlushInterval
public SearchIndexingBufferedSenderBuilder<T> autoFlushInterval(Duration autoFlushInterval)
Sets the duration between a buffered sender sending documents to be indexed.
The buffered sender will reset the duration when documents are sent for indexing, either by reaching initialBatchActionCount(int initialBatchActionCount) or by a manual trigger.
If autoFlushInterval is negative or zero and autoFlush(boolean autoFlush) is enabled the buffered sender will only flush when initialBatchActionCount(int initialBatchActionCount) is met.
Parameters:
Returns:
buildAsyncSender
public SearchIndexingBufferedAsyncSender<T> buildAsyncSender()
Creates a SearchIndexingBufferedAsyncSender<T> based on options set in the builder. Every time this is called a new instance of SearchIndexingBufferedAsyncSender<T> is created.
Returns:
buildSender
public SearchIndexingBufferedSender<T> buildSender()
Creates a SearchIndexingBufferedSender<T> based on options set in the builder. Every time this is called a new instance of SearchIndexingBufferedSender<T> is created.
Returns:
clientOptions
public SearchIndexingBufferedSenderBuilder<T> clientOptions(ClientOptions clientOptions)
.
Parameters:
configuration
public SearchIndexingBufferedSenderBuilder<T> configuration(Configuration configuration)
.
Parameters:
credential
public SearchIndexingBufferedSenderBuilder<T> credential(KeyCredential keyCredential)
.
Parameters:
credential
public SearchIndexingBufferedSenderBuilder<T> credential(TokenCredential tokenCredential)
.
Parameters:
documentKeyRetriever
public SearchIndexingBufferedSenderBuilder<T> documentKeyRetriever(Function<Map<String,Object>,String> documentKeyRetriever)
Sets the function that retrieves the key value from a document.
Parameters:
Returns:
endpoint
public SearchIndexingBufferedSenderBuilder<T> endpoint(String endpoint)
.
Parameters:
httpClient
public SearchIndexingBufferedSenderBuilder<T> httpClient(HttpClient httpClient)
.
Parameters:
httpLogOptions
public SearchIndexingBufferedSenderBuilder<T> httpLogOptions(HttpLogOptions httpLogOptions)
.
Parameters:
indexName
public SearchIndexingBufferedSenderBuilder<T> indexName(String indexName)
Sets the name of the index.
Parameters:
Returns:
initialBatchActionCount
public SearchIndexingBufferedSenderBuilder<T> initialBatchActionCount(int initialBatchActionCount)
Sets the number of documents before a buffered sender will send the batch to be indexed.
This will only trigger a batch to be sent automatically if #autoFlushInterval is configured. Default value is 512.
Parameters:
Returns:
maxRetriesPerAction
public SearchIndexingBufferedSenderBuilder<T> maxRetriesPerAction(int maxRetriesPerAction)
Sets the number of times an action will retry indexing before it is considered failed.
Documents are only retried on retryable status codes.
Default value is 3.
Parameters:
Returns:
maxThrottlingDelay
public SearchIndexingBufferedSenderBuilder<T> maxThrottlingDelay(Duration maxThrottlingDelay)
Sets the maximum duration that requests will be delayed when the service is throttling.
If maxThrottlingDelay is less than throttlingDelay(Duration throttlingDelay) then throttlingDelay(Duration throttlingDelay) will be used as the maximum delay.
Default value is Duration.ofMinutes(1).
Parameters:
Returns:
onActionAdded
public SearchIndexingBufferedSenderBuilder<T> onActionAdded(Consumer<OnActionAddedOptions> onActionAddedConsumer)
Callback hook for when a document indexing action has been added to a batch queued.
Parameters:
Returns:
onActionError
public SearchIndexingBufferedSenderBuilder<T> onActionError(Consumer<OnActionErrorOptions> onActionErrorConsumer)
Sets the callback hook for when a document indexing action has failed to index and isn't retryable.
Parameters:
Returns:
onActionSent
public SearchIndexingBufferedSenderBuilder<T> onActionSent(Consumer<OnActionSentOptions> onActionSentConsumer)
Sets the callback hook for when a document indexing has been sent in a batching request.
Parameters:
Returns:
onActionSucceeded
public SearchIndexingBufferedSenderBuilder<T> onActionSucceeded(Consumer<OnActionSucceededOptions> onActionSucceededConsumer)
Sets the callback hook for when a document indexing action has successfully completed indexing.
Parameters:
Returns:
pipeline
public SearchIndexingBufferedSenderBuilder<T> pipeline(HttpPipeline pipeline)
.
Parameters:
retryOptions
public SearchIndexingBufferedSenderBuilder<T> retryOptions(RetryOptions retryOptions)
.
Parameters:
retryPolicy
public SearchIndexingBufferedSenderBuilder<T> retryPolicy(RetryPolicy retryPolicy)
Sets the retry policy that will attempt to retry failed requests, if applicable.
Parameters:
Returns:
serializer
public SearchIndexingBufferedSenderBuilder<T> serializer(JsonSerializer jsonSerializer)
Custom JSON serializer that is used to handle model types that are not contained in the Azure Search Documents library.
Parameters:
Returns:
serviceVersion
public SearchIndexingBufferedSenderBuilder<T> serviceVersion(SearchServiceVersion serviceVersion)
Sets the service version.
Parameters:
Returns:
throttlingDelay
public SearchIndexingBufferedSenderBuilder<T> throttlingDelay(Duration throttlingDelay)
Sets the initial duration that requests will be delayed when the service is throttling.
Default value is Duration.ofMillis(800).
Parameters:
Returns: