private PublishRequest storeMessageInExtendedStore()

in src/main/java/software/amazon/sns/AmazonSNSExtendedClient.java [202:220]


    private PublishRequest storeMessageInExtendedStore(PublishRequest publishRequest, long messageAttributeSize) {
        String messageContentStr = publishRequest.getMessage();
        Long messageContentSize = Util.getStringSizeInBytes(messageContentStr);
        String s3Key = getS3keyAttribute(publishRequest.getMessageAttributes()) ;

        String largeMessagePointer = payloadStore.storeOriginalPayload(messageContentStr,
                messageContentSize, s3Key);
        publishRequest.setMessage(largeMessagePointer);

        MessageAttributeValue messageAttributeValue = new MessageAttributeValue();
        messageAttributeValue.setDataType("Number");
        messageAttributeValue.setStringValue(messageContentSize.toString());
        publishRequest.addMessageAttributesEntry(SQSExtendedClientConstants.RESERVED_ATTRIBUTE_NAME, messageAttributeValue);

        messageAttributeSize += getMessageAttributeSize(SQSExtendedClientConstants.RESERVED_ATTRIBUTE_NAME, messageAttributeValue);
        checkSizeOfMessageAttributes(messageAttributeSize);

        return publishRequest;
    }