Календарь RFC 2445

Паттерны рецидивов в реальном мире

Шаблон повторения описывает правила возникновения события. Для вычисления дат и времени возникновения данного паттерна рецидивов необходим механизм паттернов рецидивов, такой как Aspose iCalendar. Мы сталкиваемся с графиками или схемами рецидивов во многих ситуациях, например:

  • Десять встреч команд, каждый понедельник в 10 утра.
  • Выплачивайте зарплату в последний рабочий день каждый месяц.
  • Проверяйте температуру пациента каждый день в течение двух недель.
  • Посещайте тренажерный зал в понедельник, среду и пятницу.
  • Выполняйте резервное копирование каждые 4 часа в рабочие дни.
  • Создайте отчет о продажах по…
  • Обновляйте статистику сайта каждый раз…

Почти любое событие, которое происходит периодически, можно представить в виде повторяющегося паттерна. Например, следующий код вернет массив, содержащий десять случаев, связанных с предыдущим примером совещания команды:

CalendarRecurrence recurrencePattern = new CalendarRecurrence("DTSTART:20040301T100000\nRRULE:FREQ=WEEKLY;COUNT=10;BYDAY=MO");
DateCollection expectedDates = recurrencePattern.generateOccurrences();
System.out.println("expectedDates.Count = " + expectedDates.size());
for (int i = 0; i < expectedDates.size(); i++) {
    System.out.println("DateTime = " + sdf.format(expectedDates.getItem(i)));
}