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

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

Introduction

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

Prototype


public String getQueueUrl() 

Source Link

Document

The URL of the Amazon SQS queue from which messages are received.

Usage

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

License:Apache License

@Override
public ReceiveMessageResult receiveMessage(ReceiveMessageRequest receiveMessageRequest)
        throws AmazonServiceException, AmazonClientException {
    Integer maxNumberOfMessages = receiveMessageRequest.getMaxNumberOfMessages() != null
            ? receiveMessageRequest.getMaxNumberOfMessages()
            : Integer.MAX_VALUE;/*from   w  ww. jav a2 s. c o  m*/
    ReceiveMessageResult result = new ReceiveMessageResult();
    Collection<Message> resultMessages = new ArrayList<Message>();

    synchronized (messages) {
        int fetchSize = 0;
        for (Iterator<Message> iterator = messages.iterator(); iterator.hasNext()
                && fetchSize < maxNumberOfMessages; fetchSize++) {
            Message rc = iterator.next();
            resultMessages.add(rc);
            iterator.remove();
            scheduleCancelInflight(receiveMessageRequest.getQueueUrl(), rc);
        }
    }

    result.setMessages(resultMessages);
    return result;
}

From source file:org.flite.mock.amazonaws.sqs.AmazonSQSMock.java

License:Open Source License

public ReceiveMessageResult receiveMessage(final ReceiveMessageRequest request)
        throws AmazonServiceException, AmazonClientException {
    if (request == null) {
        throw new AmazonClientException("Null ReceiveMessageRequest");
    }//w w  w .  j  a  v  a  2  s .  co m
    final String queueUrl = request.getQueueUrl();
    checkURLForException(queueUrl);
    // Per documentation throws OverLimitException, but in my testing,
    // they actually only throw AmazonServiceException
    final Integer max = request.getMaxNumberOfMessages();
    if (max == null || max < 1 || max > 10) {
        throw new AmazonServiceException("MaxNumberOfMessages must be a value between [1,10]");
    }
    final ReceiveMessageResult result = new ReceiveMessageResult();
    int received = 0;
    boolean avail = true;
    while (received < request.getMaxNumberOfMessages() && avail) {
        try {
            final Message msg = allQueues.get(queueUrl).remove(0);
            received++;
            msg.setReceiptHandle(RECEIPT_ID_PREFIX + incrementer.getAndIncrement());
            retrievedMessages.get(queueUrl).put(msg.getReceiptHandle(), msg);
            result.withMessages(msg);
        } catch (Exception ex) {
            avail = false;
        }
    }
    return result;
}

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

License:Apache License

public void request(ReceiveMessageRequest request, SpanCustomizer customizer) {
    customizer.name(spanName(request));/*from  w ww . j a v  a2  s.c  om*/
    customizer.tag(AmazonSQSTraceKeys.SQS_QUEUE_URL, request.getQueueUrl());
}

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

License:Apache License

protected String spanName(ReceiveMessageRequest request) {
    return "receive_message-" + spanName(request.getQueueUrl());
}

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);/*  www  . j  ava 2s  .c  o m*/
        parser.response(result, oneWay);
        oneWay.annotate("receive-" + parser.spanName(receiveMessageRequest.getQueueUrl()));
        oneWay.start().flush();
    }

    return result;
}