/** * Applies BYMONTH rules specified in this Recur instance to the specified date list. If no BYMONTH rules are * specified the date list is returned unmodified. * @param dates * @return */ private DateList getMonthVariants(final DateList dates) { if (getMonthList().isEmpty()) { return dates; } final DateList monthlyDates = getDateListInstance(dates); for (final Iterator i = dates.iterator(); i.hasNext();) { final Date date = (Date) i.next(); final Calendar cal = getCalendarInstance(date, true); for (final Iterator j = getMonthList().iterator(); j.hasNext();) { final Integer month = (Integer) j.next(); // Java months are zero-based.. // cal.set(Calendar.MONTH, month.intValue() - 1); cal.roll(Calendar.MONTH, (month.intValue() - 1) - cal.get(Calendar.MONTH)); monthlyDates.add(Dates.getInstance(cal.getTime(), monthlyDates.getType())); } } return monthlyDates; }
b.append(interval); if (!getMonthList().isEmpty()) { b.append(';'); b.append(BYMONTH);
b.append(interval); if (!getMonthList().isEmpty()) { b.append(';'); b.append(BYMONTH);
b.append(interval); if (!getMonthList().isEmpty()) { b.append(';'); b.append(BYMONTH);
/** * Applies BYMONTH rules specified in this Recur instance to the specified date list. If no BYMONTH rules are * specified the date list is returned unmodified. * * @param dates * @return */ private DateList getMonthVariants(final DateList dates) { if (getMonthList().isEmpty()) { return dates; } final DateList monthlyDates = getDateListInstance(dates); for (final Date date : dates) { final Calendar cal = getCalendarInstance(date, true); final Calendar freqEnd = getCalendarInstance(date, true); increment(freqEnd); for (final Integer month : getMonthList()) { // Java months are zero-based.. // cal.set(Calendar.MONTH, month.intValue() - 1); cal.roll(Calendar.MONTH, (month - 1) - cal.get(Calendar.MONTH)); if (cal.after(freqEnd)) { break; // Do not break out of the FREQ-defined boundary } monthlyDates.add(Dates.getInstance(cal.getTime(), monthlyDates.getType())); } } return monthlyDates; }
/** * Applies BYMONTH rules specified in this Recur instance to the specified date list. If no BYMONTH rules are * specified the date list is returned unmodified. * * @param dates * @return */ private DateList getMonthVariants(final DateList dates) { if (getMonthList().isEmpty()) { return dates; } final DateList monthlyDates = getDateListInstance(dates); for (final Date date : dates) { final Calendar cal = getCalendarInstance(date, true); final Calendar freqEnd = getCalendarInstance(date, true); increment(freqEnd); for (final Integer month : getMonthList()) { // Java months are zero-based.. // cal.set(Calendar.MONTH, month.intValue() - 1); cal.roll(Calendar.MONTH, (month - 1) - cal.get(Calendar.MONTH)); if (cal.after(freqEnd)) { break; // Do not break out of the FREQ-defined boundary } monthlyDates.add(Dates.getInstance(cal.getTime(), monthlyDates.getType())); } } return monthlyDates; }
int freqCount = 0; for (Recur recur : recurList) { monthList.addAll(recur.getMonthList()); monthDayList.addAll(recur.getMonthDayList()); weekDayList.addAll(recur.getDayList()); newRecur.setInterval(freqCount); newRecur.getMonthList().addAll(monthList); newRecur.getMonthDayList().addAll(monthDayList); newRecur.getDayList().addAll(weekDayList);
else if (MONTHLY.equals(getFrequency()) || !getMonthList().isEmpty()) { final int month = cal.get(Calendar.MONTH);
} else if (MONTHLY.equals(getFrequency()) || !getMonthList().isEmpty()) { final int month = cal.get(Calendar.MONTH);
} else if (MONTHLY.equals(getFrequency()) || !getMonthList().isEmpty()) { final int month = cal.get(Calendar.MONTH);
private Frequency deriveFilterType() { if (frequency == Frequency.DAILY || !getYearDayList().isEmpty() || !getMonthDayList().isEmpty()) { return Frequency.DAILY; } else if (frequency == Frequency.WEEKLY || !getWeekNoList().isEmpty()) { return Frequency.WEEKLY; } else if (frequency == Frequency.MONTHLY || !getMonthList().isEmpty()) { return Frequency.MONTHLY; } else if (frequency == Frequency.YEARLY) { return Frequency.YEARLY; } return null; }
private Frequency deriveFilterType() { if (frequency == Frequency.DAILY || !getYearDayList().isEmpty() || !getMonthDayList().isEmpty()) { return Frequency.DAILY; } else if (frequency == Frequency.WEEKLY || !getWeekNoList().isEmpty()) { return Frequency.WEEKLY; } else if (frequency == Frequency.MONTHLY || !getMonthList().isEmpty()) { return Frequency.MONTHLY; } else if (frequency == Frequency.YEARLY) { return Frequency.YEARLY; } return null; }
@SuppressWarnings("unchecked") @Override public void visit(TemporalExpressions.MonthRange expr) { int startMonth = expr.getStartMonth(); int endMonth = expr.getEndMonth(); Calendar cal = Calendar.getInstance(); int maxMonth = cal.getActualMaximum(Calendar.MONTH); NumberList monthList = new NumberList(); monthList.add(startMonth + 1); while (startMonth != endMonth) { startMonth++; if (startMonth > maxMonth) { startMonth = Calendar.JANUARY; } monthList.add(startMonth + 1); } Recur recur = new Recur(Recur.MONTHLY, 0); recur.getMonthList().addAll(monthList); this.state.addRecur(recur); }
rrc.setByYearDay(checkNumList(recur.getYearDayList())); rrc.setByWeekNo(checkNumList(recur.getWeekNoList())); rrc.setByMonth(checkNumList(recur.getMonthList())); rrc.setBySetPos(checkNumList(recur.getSetPosList()));
for (Integer day : recur.getMonthList()) { recurrenceData.setCustomized(true);
outField(jgen, "interval", r.getInterval()); outField(jgen, "bymonth", r.getMonthList()); outField(jgen, "byweekno", r.getWeekNoList()); outField(jgen, "byyearday", r.getYearDayList());
xmlProp(xml, XcalTags.bymonth, r.getMonthList()); xmlProp(xml, XcalTags.byweekno, r.getWeekNoList()); xmlProp(xml, XcalTags.byyearday, r.getYearDayList());
for (int i = 0; i < 12; i++) { if (months[i]) { recur.getMonthList().add(i + 1);