Class BatchOverrideConfiguration

java.lang.Object
software.amazon.awssdk.services.sqs.batchmanager.BatchOverrideConfiguration
All Implemented Interfaces:
ToCopyableBuilder<BatchOverrideConfiguration.Builder,BatchOverrideConfiguration>

public final class BatchOverrideConfiguration extends Object implements ToCopyableBuilder<BatchOverrideConfiguration.Builder,BatchOverrideConfiguration>
Configuration values for the BatchManager implementation used for controlling batch operations. All values are optional, and default values will be used if they are not specified.
  • Method Details

    • builder

      public static BatchOverrideConfiguration.Builder builder()
    • maxBatchSize

      public Integer maxBatchSize()
      Returns:
      the maximum number of items that can be batched together in a single outbound SQS request (e.g., for SendMessageBatchRequest, ChangeMessageVisibilityBatchRequest, or DeleteMessageBatchRequest). A batch can contain up to a maximum of 10 messages. The default value is 10.
    • sendRequestFrequency

      public Duration sendRequestFrequency()
      Returns:
      the maximum duration an outgoing call waits for additional messages of the same type before being sent. If the maxBatchSize() is reached before this duration, the batch will be sent immediately. The default value is 200 milliseconds.
    • receiveMessageVisibilityTimeout

      public Duration receiveMessageVisibilityTimeout()
      Returns:
      the custom visibility timeout to use when retrieving messages from SQS. If not set, the default visibility timeout configured on the SQS queue will be used.
    • receiveMessageMinWaitDuration

      public Duration receiveMessageMinWaitDuration()
      Returns:
      the minimum wait time for incoming receive message requests. Without a non-zero minimum wait time, threads can waste CPU resources busy-waiting for messages. The default value is 50 milliseconds.
    • receiveMessageSystemAttributeNames

      public List<MessageSystemAttributeName> receiveMessageSystemAttributeNames()
      Returns:
      the system attribute names to request for ReceiveMessageRequest. Requests with differing system attribute names will bypass the batch manager and make a direct call to SQS.
    • receiveMessageAttributeNames

      public List<String> receiveMessageAttributeNames()
      Returns:
      the message attribute names to request for ReceiveMessageRequest. Requests with different message attribute names will bypass the batch manager and make a direct call to SQS.
    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<BatchOverrideConfiguration.Builder,BatchOverrideConfiguration>
      Returns:
      a builder for type T
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object