Example usage for com.amazonaws.services.sqs.model SendMessageRequest withQueueUrl

List of usage examples for com.amazonaws.services.sqs.model SendMessageRequest withQueueUrl

Introduction

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

Prototype


public SendMessageRequest withQueueUrl(String queueUrl) 

Source Link

Document

The URL of the Amazon SQS queue to which a message is sent.

Usage

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

License:Apache License

private TbMsg publishMessage(TbContext ctx, TbMsg msg) {
    String queueUrl = TbNodeUtils.processPattern(this.config.getQueueUrlPattern(), msg.getMetaData());
    SendMessageRequest sendMsgRequest = new SendMessageRequest();
    sendMsgRequest.withQueueUrl(queueUrl);
    sendMsgRequest.withMessageBody(msg.getData());
    Map<String, MessageAttributeValue> messageAttributes = new HashMap<>();
    this.config.getMessageAttributes().forEach((k, v) -> {
        String name = TbNodeUtils.processPattern(k, msg.getMetaData());
        String val = TbNodeUtils.processPattern(v, msg.getMetaData());
        messageAttributes.put(name, new MessageAttributeValue().withDataType("String").withStringValue(val));
    });//from  ww  w. j  ava2  s.  c  o m
    sendMsgRequest.setMessageAttributes(messageAttributes);
    if (this.config.getQueueType() == TbSqsNodeConfiguration.QueueType.STANDARD) {
        sendMsgRequest.withDelaySeconds(this.config.getDelaySeconds());
    } else {
        sendMsgRequest.withMessageDeduplicationId(msg.getId().toString());
        sendMsgRequest.withMessageGroupId(msg.getOriginator().toString());
    }
    SendMessageResult result = this.sqsClient.sendMessage(sendMsgRequest);
    return processSendMessageResult(ctx, msg, result);
}

From source file:support.SQS.java

License:Open Source License

public void sendMessage(String messageKeyValue, String textMessage) throws Exception {
    // Send a message
    System.out.println("Sending a message.\n");

    Map<String, MessageAttributeValue> messageAttributes = new HashMap<>();
    messageAttributes.put(message_attribute_name,
            new MessageAttributeValue().withDataType("String").withStringValue(messageKeyValue));

    SendMessageRequest request = new SendMessageRequest();
    request.withMessageBody(textMessage);
    request.withQueueUrl(send_queue_url);
    request.withDelaySeconds(delay_time);
    request.withMessageAttributes(messageAttributes);
    sqs.sendMessage(request);// w  w  w.j a va  2 s  .com
}