001/*
002 *  Copyright 2021 Anyware Services
003 *
004 *  Licensed under the Apache License, Version 2.0 (the "License");
005 *  you may not use this file except in compliance with the License.
006 *  You may obtain a copy of the License at
007 *
008 *      http://www.apache.org/licenses/LICENSE-2.0
009 *
010 *  Unless required by applicable law or agreed to in writing, software
011 *  distributed under the License is distributed on an "AS IS" BASIS,
012 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 *  See the License for the specific language governing permissions and
014 *  limitations under the License.
015 */
016package org.ametys.plugins.workspaces.project.notification;
017
018import java.time.ZonedDateTime;
019
020import org.ametys.plugins.workspaces.project.notification.preferences.NotificationPreferencesHelper.Frequency;
021import org.ametys.runtime.i18n.I18nizableText;
022
023/**
024 * Implementation to send a mail with the summary of all notification for the past day
025 */
026public class SendWeeklyNotificationSummarySchedulable extends AbstractSendNotificationSummarySchedulable
027{
028    @Override
029    protected I18nizableText getI18nSubject()
030    {
031        String i18nKey = "PROJECT_MAIL_NOTIFICATION_SUBJECT_SUMMARY_WEEKLY";
032        return new I18nizableText("plugin." + _pluginName, i18nKey);
033    }
034    
035    @Override
036    protected Frequency getFrequency()
037    {
038        return Frequency.WEEKLY;
039    }
040    
041
042    @Override
043    protected ZonedDateTime getTimeFrameLimit()
044    {
045        return ZonedDateTime.now().minusWeeks(1);
046    }
047}