package de.flower.rmt.service.mail; import de.flower.rmt.model.db.entity.Invitation; import de.flower.rmt.model.db.entity.User; import de.flower.rmt.model.db.entity.event.Event; import de.flower.rmt.model.dto.Notification; import java.util.List; /** * @author flowerrrr */ public interface INotificationService { void sendResetPasswordMail(User user, final User manager); void sendInvitationNewUser(User user, User manager); /** * Send mail to manager that the inviation status has changed. * Usually only called when status changes from accepted -> declined. * * @param invitation */ void sendStatusChangedMessage(Invitation invitation); /** * Presets notification with template strings. * * @param event * @return */ Notification newEventNotification(Event event); void sendNoResponseReminder(Event event, List<Invitation> invitations); void sendUnsureReminder(Event event, List<Invitation> invitations); void sendEventCanceledMessage(final Event event, final List<Invitation> invitations); }