docs: public SendMessageResult sendMessage(SendMessageRequest sendMessageRequest) {
  
  		if (sendMessageRequest == null) {
  			String errorMessage = "sendMessageRequest cannot be null.";
  			LOG.error(errorMessage);
  			throw new AmazonClientException(errorMessage);
  		}
  
  		sendMessageRequest.getRequestClientOptions().appendUserAgent(SQSExtendedClientConstants.USER_AGENT_HEADER);
  
  		if (!clientConfiguration.isLargePayloadSupportEnabled()) {
  			return super.sendMessage(sendMessageRequest);
  		}
  
  		if (sendMessageRequest.getMessageBody() == null || "".equals(sendMessageRequest.getMessageBody())) {
  			String errorMessage = "messageBody cannot be null or empty.";
  			LOG.error(errorMessage);
  			throw new AmazonClientException(errorMessage);
  		}
  
  		if (clientConfiguration.isAlwaysThroughS3() || isLarge(sendMessageRequest)) {
  			sendMessageRequest = storeMessageInS3(sendMessageRequest);
  		}
  		return super.sendMessage(sendMessageRequest);
  	}