com.amazonaws.services.sqs.model.ReceiveMessageRequest.setVisibilityTimeout()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(8.8k)|赞(0)|评价(0)|浏览(66)

本文整理了Java中com.amazonaws.services.sqs.model.ReceiveMessageRequest.setVisibilityTimeout方法的一些代码示例,展示了ReceiveMessageRequest.setVisibilityTimeout的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ReceiveMessageRequest.setVisibilityTimeout方法的具体详情如下:
包路径:com.amazonaws.services.sqs.model.ReceiveMessageRequest
类名称:ReceiveMessageRequest
方法名:setVisibilityTimeout

ReceiveMessageRequest.setVisibilityTimeout介绍

[英]The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request.
[中]接收到的消息在被ReceiveMessage请求检索后对后续检索请求隐藏的持续时间(秒)。

代码示例

代码示例来源:origin: aws/aws-sdk-java

/**
 * <p>
 * The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being
 * retrieved by a <code>ReceiveMessage</code> request.
 * </p>
 * 
 * @param visibilityTimeout
 *        The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after
 *        being retrieved by a <code>ReceiveMessage</code> request.
 * @return Returns a reference to this object so that method calls can be chained together.
 */
public ReceiveMessageRequest withVisibilityTimeout(Integer visibilityTimeout) {
  setVisibilityTimeout(visibilityTimeout);
  return this;
}

代码示例来源:origin: apache/usergrid

receiveMessageRequest.setAttributeNames(requestMessageAttributeNames);
receiveMessageRequest.setMaxNumberOfMessages( limit );
receiveMessageRequest.setVisibilityTimeout(
  Math.max( MIN_VISIBILITY_TIMEOUT, fig.getVisibilityTimeout() / 1000 ) );

代码示例来源:origin: aws/aws-sdk-java

/**
   * Attempts to retrieve messages from SQS and upon completion (successful or unsuccessful)
   * reports the batch as complete and open
   */
  public void run() {
    try {
      visibilityDeadlineNano = System.nanoTime() + visibilityTimeoutNanos;
      ReceiveMessageRequest request = new ReceiveMessageRequest(qUrl).withMaxNumberOfMessages(config
          .getMaxBatchSize());
      ResultConverter.appendUserAgent(request, AmazonSQSBufferedAsyncClient.USER_AGENT);
      if (config.getVisibilityTimeoutSeconds() > 0) {
        request.setVisibilityTimeout(config.getVisibilityTimeoutSeconds());
        visibilityDeadlineNano = System.nanoTime()
            + TimeUnit.NANOSECONDS.convert(config.getVisibilityTimeoutSeconds(), TimeUnit.SECONDS);
      }
      if (config.isLongPoll()) {
        request.withWaitTimeSeconds(config.getLongPollWaitTimeoutSeconds());
      }
      messages = sqsClient.receiveMessage(request).getMessages();
    } catch (AmazonClientException e) {
      exception = e;
    } finally {
      // whatever happened, we are done and can be considered open
      open = true;
      parentBuffer.reportBatchFinished(this);
    }
  }
}

代码示例来源:origin: apache/nifi

request.setMessageAttributeNames(Collections.singleton("All"));
request.setMaxNumberOfMessages(context.getProperty(BATCH_SIZE).asInteger());
request.setVisibilityTimeout(context.getProperty(VISIBILITY_TIMEOUT).asTimePeriod(TimeUnit.SECONDS).intValue());
request.setQueueUrl(queueUrl);
request.setWaitTimeSeconds(context.getProperty(RECEIVE_MSG_WAIT_TIME).asTimePeriod(TimeUnit.SECONDS).intValue());

代码示例来源:origin: aws-amplify/aws-sdk-android

/**
   * Attempts to retrieve messages from SQS and upon completion
   * (successful or unsuccessful) reports the batch as complete and open
   */
  @Override
  public void run() {
    try {
      visibilityDeadlineNano = System.nanoTime() + visibilityTimeoutNanos;
      ReceiveMessageRequest request = new ReceiveMessageRequest(qUrl)
          .withMaxNumberOfMessages(config.getMaxBatchSize());
      ResultConverter.appendUserAgent(request, AmazonSQSBufferedAsyncClient.USER_AGENT);
      if (config.getVisibilityTimeoutSeconds() > 0) {
        request.setVisibilityTimeout(config.getVisibilityTimeoutSeconds());
        visibilityDeadlineNano = System.nanoTime()
            + TimeUnit.NANOSECONDS.convert(config.getVisibilityTimeoutSeconds(),
                TimeUnit.SECONDS);
      }
      if (config.isLongPoll()) {
        request.withWaitTimeSeconds(config.getLongPollWaitTimeoutSeconds());
      }
      messages = sqsClient.receiveMessage(request).getMessages();
    } catch (AmazonClientException e) {
      exception = e;
    } finally {
      // whatever happened, we are done and can be considered open
      open = true;
      parentBuffer.reportBatchFinished(this);
    }
  }
}

代码示例来源:origin: com.amazonaws/aws-java-sdk-sqs

/**
 * <p>
 * The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being
 * retrieved by a <code>ReceiveMessage</code> request.
 * </p>
 * 
 * @param visibilityTimeout
 *        The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after
 *        being retrieved by a <code>ReceiveMessage</code> request.
 * @return Returns a reference to this object so that method calls can be chained together.
 */
public ReceiveMessageRequest withVisibilityTimeout(Integer visibilityTimeout) {
  setVisibilityTimeout(visibilityTimeout);
  return this;
}

代码示例来源:origin: payara/Cloud-Connectors

ReceiveMessageRequest rmr = new ReceiveMessageRequest(spec.getQueueURL());
rmr.setMaxNumberOfMessages(spec.getMaxMessages());
rmr.setVisibilityTimeout(spec.getVisibilityTimeout());
rmr.setWaitTimeSeconds(spec.getPollInterval()/1000);
rmr.setAttributeNames(Arrays.asList(spec.getAttributeNames().split(",")));

代码示例来源:origin: bitsofinfo/s3-bucket-loader

req.setWaitTimeSeconds(10);
req.setMaxNumberOfMessages(10);
req.setVisibilityTimeout(300);
req.setQueueUrl(sqsQueueUrl);

代码示例来源:origin: bitsofinfo/s3-bucket-loader

req.setVisibilityTimeout(600*3); 
req.setMaxNumberOfMessages(1); // only one at a time..

代码示例来源:origin: bitsofinfo/s3-bucket-loader

req.setVisibilityTimeout(900); // 15 minutes it will be invisible to other consumers
req.setMaxNumberOfMessages(10);

代码示例来源:origin: com.amazonaws/aws-java-sdk-sqs

/**
   * Attempts to retrieve messages from SQS and upon completion (successful or unsuccessful)
   * reports the batch as complete and open
   */
  public void run() {
    try {
      visibilityDeadlineNano = System.nanoTime() + visibilityTimeoutNanos;
      ReceiveMessageRequest request = new ReceiveMessageRequest(qUrl).withMaxNumberOfMessages(config
          .getMaxBatchSize());
      ResultConverter.appendUserAgent(request, AmazonSQSBufferedAsyncClient.USER_AGENT);
      if (config.getVisibilityTimeoutSeconds() > 0) {
        request.setVisibilityTimeout(config.getVisibilityTimeoutSeconds());
        visibilityDeadlineNano = System.nanoTime()
            + TimeUnit.NANOSECONDS.convert(config.getVisibilityTimeoutSeconds(), TimeUnit.SECONDS);
      }
      if (config.isLongPoll()) {
        request.withWaitTimeSeconds(config.getLongPollWaitTimeoutSeconds());
      }
      messages = sqsClient.receiveMessage(request).getMessages();
    } catch (AmazonClientException e) {
      exception = e;
    } finally {
      // whatever happened, we are done and can be considered open
      open = true;
      parentBuffer.reportBatchFinished(this);
    }
  }
}

代码示例来源:origin: com.amazonaws/aws-android-sdk-sqs

/**
   * Attempts to retrieve messages from SQS and upon completion
   * (successful or unsuccessful) reports the batch as complete and open
   */
  @Override
  public void run() {
    try {
      visibilityDeadlineNano = System.nanoTime() + visibilityTimeoutNanos;
      ReceiveMessageRequest request = new ReceiveMessageRequest(qUrl)
          .withMaxNumberOfMessages(config.getMaxBatchSize());
      ResultConverter.appendUserAgent(request, AmazonSQSBufferedAsyncClient.USER_AGENT);
      if (config.getVisibilityTimeoutSeconds() > 0) {
        request.setVisibilityTimeout(config.getVisibilityTimeoutSeconds());
        visibilityDeadlineNano = System.nanoTime()
            + TimeUnit.NANOSECONDS.convert(config.getVisibilityTimeoutSeconds(),
                TimeUnit.SECONDS);
      }
      if (config.isLongPoll()) {
        request.withWaitTimeSeconds(config.getLongPollWaitTimeoutSeconds());
      }
      messages = sqsClient.receiveMessage(request).getMessages();
    } catch (AmazonClientException e) {
      exception = e;
    } finally {
      // whatever happened, we are done and can be considered open
      open = true;
      parentBuffer.reportBatchFinished(this);
    }
  }
}

代码示例来源:origin: aws/aws-cloudtrail-processing-library

/**
 * Poll SQS queue for incoming messages, filter them, and return a list of SQS Messages.
 *
 * @return a list of SQS messages.
 */
public List<Message> pollQueue() {
  boolean success = false;
  ProgressStatus pollQueueStatus = new ProgressStatus(ProgressState.pollQueue, new BasicPollQueueInfo(0, success));
  final Object reportObject = progressReporter.reportStart(pollQueueStatus);
  ReceiveMessageRequest request = new ReceiveMessageRequest().withAttributeNames(ALL_ATTRIBUTES);
  request.setQueueUrl(config.getSqsUrl());
  request.setVisibilityTimeout(config.getVisibilityTimeout());
  request.setMaxNumberOfMessages(DEFAULT_SQS_MESSAGE_SIZE_LIMIT);
  request.setWaitTimeSeconds(DEFAULT_WAIT_TIME_SECONDS);
  List<Message> sqsMessages = new ArrayList<Message>();
  try {
    ReceiveMessageResult result = sqsClient.receiveMessage(request);
    sqsMessages = result.getMessages();
    logger.info("Polled " + sqsMessages.size() + " sqs messages from " + config.getSqsUrl());
    success = true;
  } catch (AmazonServiceException e) {
    LibraryUtils.handleException(exceptionHandler, pollQueueStatus, e, "Failed to poll sqs message.");
  } finally {
    LibraryUtils.endToProcess(progressReporter, success, pollQueueStatus, reportObject);
  }
  return sqsMessages;
}

代码示例来源:origin: org.apache.nifi/nifi-aws-processors

request.setMessageAttributeNames(Collections.singleton("All"));
request.setMaxNumberOfMessages(context.getProperty(BATCH_SIZE).asInteger());
request.setVisibilityTimeout(context.getProperty(VISIBILITY_TIMEOUT).asTimePeriod(TimeUnit.SECONDS).intValue());
request.setQueueUrl(queueUrl);
request.setWaitTimeSeconds(context.getProperty(RECEIVE_MSG_WAIT_TIME).asTimePeriod(TimeUnit.SECONDS).intValue());

相关文章

微信公众号

最新文章

更多