in src/main/java/com/amazon/sqs/javamessaging/AmazonSQSExtendedClient.java [683:720]
public DeleteMessageBatchResponse deleteMessageBatch(DeleteMessageBatchRequest deleteMessageBatchRequest) {
if (deleteMessageBatchRequest == null) {
String errorMessage = "deleteMessageBatchRequest cannot be null.";
LOG.error(errorMessage);
throw SdkClientException.create(errorMessage);
}
DeleteMessageBatchRequest.Builder deleteMessageBatchRequestBuilder = deleteMessageBatchRequest.toBuilder();
appendUserAgent(deleteMessageBatchRequestBuilder);
if (!clientConfiguration.isPayloadSupportEnabled()) {
return super.deleteMessageBatch(deleteMessageBatchRequest);
}
List<DeleteMessageBatchRequestEntry> entries = new ArrayList<>(deleteMessageBatchRequest.entries().size());
for (DeleteMessageBatchRequestEntry entry : deleteMessageBatchRequest.entries()) {
DeleteMessageBatchRequestEntry.Builder entryBuilder = entry.toBuilder();
String receiptHandle = entry.receiptHandle();
String origReceiptHandle = receiptHandle;
// Update original receipt handle if needed
if (isS3ReceiptHandle(receiptHandle)) {
origReceiptHandle = getOrigReceiptHandle(receiptHandle);
// Delete s3 payload if needed
if (clientConfiguration.doesCleanupS3Payload()) {
String messagePointer = getMessagePointerFromModifiedReceiptHandle(receiptHandle);
payloadStore.deleteOriginalPayload(messagePointer);
}
}
entryBuilder.receiptHandle(origReceiptHandle);
entries.add(entryBuilder.build());
}
deleteMessageBatchRequestBuilder.entries(entries);
return super.deleteMessageBatch(deleteMessageBatchRequestBuilder.build());
}