iCalendar RFC 2445

Återkommandemönster i verkligheten

Ett återkommandemönster beskriver reglerna för när händelsen inträffar. En återkommandemönster‑motor såsom Aspose iCalendar behövs för att beräkna datum och tider för förekomsterna för ett givet återkommandemönster. Vi stöter på scheman eller återkommandemönster i många situationer, till exempel:

  • Tio teammöten, varje måndag kl 10.00.
  • Processa löneutbetalning den sista arbetsdagen varje månad.
  • Kontrollera patientens temperatur varje dag i två veckor.
  • Gå till gymmet på måndag, onsdag och fredag.
  • Kör backup var fjärde timme på arbetsdagar.
  • Generera försäljningsrapport på …
  • Uppdatera webbplatsstatistik var … Nästan varje händelse som inträffar periodiskt kan representeras som ett återkommandemönster. Till exempel kommer följande kod att returnera en array som innehåller tio förekomster av det tidigare exempel på teammöte:
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)));
}