Example usage for com.amazonaws.services.sqs.model ReceiveMessageRequest withMessageAttributeNames

List of usage examples for com.amazonaws.services.sqs.model ReceiveMessageRequest withMessageAttributeNames

Introduction

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

Prototype


public ReceiveMessageRequest withMessageAttributeNames(java.util.Collection<String> messageAttributeNames) 

Source Link

Document

The name of the message attribute, where N is the index.

Usage

From source file:com.mateusz.mateuszsqs.SQSConfig.java

public static List<String> getMessages(AmazonSQS sqs, String sqsURL) {
    ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(sqsURL);
    List<Message> messages = sqs.receiveMessage(receiveMessageRequest.withMessageAttributeNames("All"))
            .getMessages();//from  w  w w . ja  v  a  2 s  .  c  o  m
    List<String> filesToProcess = new ArrayList<String>();
    for (Message message : messages) {
        System.out.println("  Message");
        System.out.println("    MessageId:     " + message.getMessageId());
        System.out.println("    ReceiptHandle: " + message.getReceiptHandle());
        System.out.println("    MD5OfBody:     " + message.getMD5OfBody());
        System.out.println("    Body:          " + message.getBody());
        for (Map.Entry<String, MessageAttributeValue> entry : message.getMessageAttributes().entrySet()) {
            System.out.println("  Attribute");
            System.out.println("    Name:  " + entry.getKey());
            System.out.println("    Value: " + entry.getValue().getStringValue());
            filesToProcess.add(entry.getValue().getStringValue());
        }
        System.out.println("Deleting a message.\n");
        String messageReceiptHandle = message.getReceiptHandle();
        sqs.deleteMessage(new DeleteMessageRequest(sqsURL, messageReceiptHandle));
    }

    return filesToProcess;
}

From source file:io.relution.jenkins.awssqs.net.SQSChannelImpl.java

License:Apache License

@Override
public List<Message> getMessages() {
    try {// www. ja  v  a2  s  .  c  o  m
        this.logRequestCount();

        final ReceiveMessageRequest request = this.factory.createReceiveMessageRequest(this.queue);
        final ReceiveMessageResult result = this.sqs.receiveMessage(request.withMessageAttributeNames("All"));

        if (result == null) {
            return Collections.emptyList();
        }

        return result.getMessages();

    } catch (final com.amazonaws.services.sqs.model.QueueDoesNotExistException e) {
        Log.warning("Failed to send receive message request for %s, queue does not exist", this.queue);
        throw e;

    } catch (final com.amazonaws.AmazonServiceException e) {
        if (ErrorType.is(e, ErrorCode.INVALID_CLIENT_TOKEN_ID, HttpStatus.SC_FORBIDDEN)) {
            Log.warning("Failed to send receive message request for %s, %s", this.queue, e.getMessage());
            throw e;
        }

        Log.severe(e, "Failed to send receive message request for %s", this.queue);
    }
    return Collections.emptyList();
}

From source file:smartthings.brave.sqs.TracingAmazonSQSClient.java

License:Apache License

@Override
public ReceiveMessageResult receiveMessage(ReceiveMessageRequest receiveMessageRequest) {
    receiveMessageRequest = receiveMessageRequest.withMessageAttributeNames(tracing.propagation().keys());

    ReceiveMessageResult result = delegate.receiveMessage(receiveMessageRequest);

    // complete in flight one-way spans for all received messages
    for (Message message : result.getMessages()) {
        TraceContextOrSamplingFlags traceContextOrSamplingFlags = extractor
                .extract(message.getMessageAttributes());
        TraceContext ctx = traceContextOrSamplingFlags.context();
        Span oneWay = withEndpoint((ctx != null) ? tracing.tracer().joinSpan(ctx)
                : tracing.tracer().newTrace(traceContextOrSamplingFlags.samplingFlags()));

        oneWay.kind(Span.Kind.SERVER);//from ww  w  .jav a 2s  .  c o  m
        parser.response(result, oneWay);
        oneWay.annotate("receive-" + parser.spanName(receiveMessageRequest.getQueueUrl()));
        oneWay.start().flush();
    }

    return result;
}

From source file:support.SQS.java

License:Open Source License

public List<Message> receiveMessages() throws Exception {
    // Receive messages
    ReceiveMessageRequest receiveMessageRequest = new ReceiveMessageRequest(receive_queue_url);
    receiveMessageRequest.withMessageAttributeNames(message_attribute_name);
    receiveMessageRequest.withAttributeNames(attribute_name);
    receiveMessageRequest.withWaitTimeSeconds(wait_time_seconds);
    receiveMessageRequest.withMaxNumberOfMessages(max_no_messages);
    receiveMessageRequest.withVisibilityTimeout(visibility_timeout);

    List<Message> messages = sqs.receiveMessage(receiveMessageRequest).getMessages();
    return messages;
}