Example usage for com.amazonaws.services.sqs.model SendMessageResult getMD5OfMessageBody

List of usage examples for com.amazonaws.services.sqs.model SendMessageResult getMD5OfMessageBody

Introduction

In this page you can find the example usage for com.amazonaws.services.sqs.model SendMessageResult getMD5OfMessageBody.

Prototype


public String getMD5OfMessageBody() 

Source Link

Document

An MD5 digest of the non-URL-encoded message attribute string.

Usage

From source file:org.apache.camel.component.aws.sqs.SqsProducer.java

License:Apache License

public void process(Exchange exchange) throws Exception {
    String body = exchange.getIn().getBody(String.class);
    SendMessageRequest request = new SendMessageRequest(getQueueUrl(), body);
    addDelay(request, exchange);//from  ww  w  .  ja  va2s .  c  o  m

    LOG.trace("Sending request [{}] from exchange [{}]...", request, exchange);

    SendMessageResult result = getClient().sendMessage(request);

    LOG.trace("Received result [{}]", result);

    Message message = getMessageForResponse(exchange);
    message.setHeader(SqsConstants.MESSAGE_ID, result.getMessageId());
    message.setHeader(SqsConstants.MD5_OF_BODY, result.getMD5OfMessageBody());
}

From source file:org.springframework.integration.aws.sqs.core.AmazonSQSOperationsImpl.java

License:Apache License

public AmazonSQSSendMessageResponse sendMessage(String queueURL, AmazonSQSMessage message) {
    if (logger.isDebugEnabled())
        logger.info("Sending message to queue " + queueURL);
    String transformedPayload = null;
    try {//  www .java  2 s  .  c o m
        transformedPayload = messageTransformer.serialize(message);
        SendMessageResult result = clientFactory.getClient(queueURL)
                .sendMessage(new SendMessageRequest(queueURL, transformedPayload));
        if (logger.isDebugEnabled())
            logger.debug("Message successfully sent");
        return new AmazonSQSSendMessageResponse(result.getMessageId(), result.getMD5OfMessageBody());
    } catch (Exception e) {
        logger.error("Exception thrown while sending a message to queue \"" + queueURL
                + "\", check exception for more details", e);
        throw new AmazonSQSException(credentials.getAccessKey(),
                "Exception while sending message to the queue \"" + queueURL
                        + "\", see nested exception for more details",
                queueURL, transformedPayload, e);
    }
}

From source file:org.thingsboard.rule.engine.aws.sqs.TbSqsNode.java

License:Apache License

private TbMsg processSendMessageResult(TbContext ctx, TbMsg origMsg, SendMessageResult result) {
    TbMsgMetaData metaData = origMsg.getMetaData().copy();
    metaData.putValue(MESSAGE_ID, result.getMessageId());
    metaData.putValue(REQUEST_ID, result.getSdkResponseMetadata().getRequestId());
    if (!StringUtils.isEmpty(result.getMD5OfMessageBody())) {
        metaData.putValue(MESSAGE_BODY_MD5, result.getMD5OfMessageBody());
    }//  w w  w. j av  a 2s  .c o m
    if (!StringUtils.isEmpty(result.getMD5OfMessageAttributes())) {
        metaData.putValue(MESSAGE_ATTRIBUTES_MD5, result.getMD5OfMessageAttributes());
    }
    if (!StringUtils.isEmpty(result.getSequenceNumber())) {
        metaData.putValue(SEQUENCE_NUMBER, result.getSequenceNumber());
    }
    return ctx.transformMsg(origMsg, origMsg.getType(), origMsg.getOriginator(), metaData, origMsg.getData());
}