
pl.wrzasq.commons.aws.sns.NotificationHandler Maven / Gradle / Ivy
// Generated by delombok at Thu Mar 14 22:27:38 UTC 2019
/*
* 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.sns;
import java.util.function.Consumer;
import com.amazonaws.services.lambda.runtime.events.SNSEvent;
/**
* SNS notifications handler.
*/
public class NotificationHandler {
/**
* Message consumer.
*/
private Consumer messageHandler;
/**
* Processes event notification.
*
* @param event Notification message.
*/
public void process(SNSEvent event) {
// SNS event for lambda always contain one record, but keep it uniform
event.getRecords().stream().map(SNSEvent.SNSRecord::getSNS).forEach(this.messageHandler);
}
@SuppressWarnings("all")
public NotificationHandler(final Consumer messageHandler) {
this.messageHandler = messageHandler;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy