All Downloads are FREE. Search and download functionalities are using the official Maven repository.

pl.wrzasq.commons.aws.sqs.SimpleQueueHandler Maven / Gradle / Ivy

/*
 * This file is part of the pl.wrzasq.commons.
 *
 * @license http://mit-license.org/ The MIT license
 * @copyright 2017, 2019 © by Rafał Wrzeszcz - Wrzasq.pl.
 */

package pl.wrzasq.commons.aws.sqs;

import java.util.function.Consumer;

import com.amazonaws.services.sqs.AmazonSQS;

/**
 * SQS queue handler that simply processes message body.
 */
public class SimpleQueueHandler extends QueueHandler {
    /**
     * Initializes handler.
     *
     * @param sqs SQS client.
     * @param queueUrl SQS queue URL.
     * @param messageBodyHandler Single message consumer.
     */
    public SimpleQueueHandler(AmazonSQS sqs, String queueUrl, Consumer messageBodyHandler) {
        super(sqs, queueUrl, message -> messageBodyHandler.accept(message.getBody()));
    }

    /**
     * Initializes handler with the default SQS client.
     *
     * 

* This is a simplified version for AWS internal services, like AWS Lambda, which relies on environment * permissions. *

* * @param queueUrl SQS queue URL. * @param messageBodyHandler Single message consumer. */ public SimpleQueueHandler(String queueUrl, Consumer messageBodyHandler) { super(queueUrl, message -> messageBodyHandler.accept(message.getBody())); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy