Package net.fortuna.ical4j.model

Examples of net.fortuna.ical4j.model.Recur


  }
 
  public static String getRecurrence(String rule) {
    if (rule != null) {
      try {
        Recur recur = new Recur(rule);
        String frequency = recur.getFrequency();
        WeekDayList wdl = recur.getDayList();
        Integer interval = recur.getInterval();
        if((wdl != null && wdl.size() > 0)) {
          // we only support one rule with daylist
          return KalendarEvent.WORKDAILY;
        } else if(interval != null && interval == 2) {
          // we only support one rule with interval
View Full Code Here


  public static Date getRecurrenceEndDate(String rule) {
    TimeZone tz = TimeZoneRegistryFactory.getInstance().createRegistry().getTimeZone(java.util.Calendar.getInstance().getTimeZone().getID());
   
    if (rule != null) {
      try {
        Recur recur = new Recur(rule);
        Date dUntil = recur.getUntil();
        DateTime dtUntil = dUntil == null ? null : new DateTime(dUntil.getTime());
        if(dtUntil != null) {
          dtUntil.setTimeZone(tz);
          return dtUntil;
        }
View Full Code Here

        sb.append(KalendarEvent.UNTIL);
        sb.append("=");
        sb.append(recurEndDT.toString());
      }
      try {
        Recur recur = new Recur(sb.toString());
        RRule rrule = new RRule(recur);
        return rrule.getValue();
      } catch (ParseException e) {
        Tracing.createLoggerFor(CalendarUtils.class).error("cannot create recurrence rule: " + recurrence.toString(), e);
      }
View Full Code Here

   
    // recurrence
    String recurrence = kEvent.getRecurrenceRule();
    if(recurrence != null && !recurrence.equals("")) {
      try {
        Recur recur = new Recur(recurrence);
        RRule rrule = new RRule(recur);
        vEventProperties.add(rrule);
      } catch (ParseException e) {
        Tracing.createLoggerFor(getClass()).error("cannot create recurrence rule: " + recurrence.toString(), e);
      }
View Full Code Here

  private DateList getRecurringsInPeriod(Date periodStart, Date periodEnd, KalendarEvent kEvent) {
    DateList recurDates = null;
      String recurrenceRule = kEvent.getRecurrenceRule();
      if(recurrenceRule != null && !recurrenceRule.equals("")) {
        try {
          Recur recur = new Recur(recurrenceRule);
          net.fortuna.ical4j.model.Date periodStartDate = new net.fortuna.ical4j.model.Date(periodStart);
          net.fortuna.ical4j.model.Date periodEndDate = new net.fortuna.ical4j.model.Date(periodEnd);
          net.fortuna.ical4j.model.Date eventStartDate = new net.fortuna.ical4j.model.Date(kEvent.getBegin());
          recurDates = recur.getDates(eventStartDate, periodStartDate, periodEndDate, Value.DATE);
        } catch (ParseException e) {
          Tracing.createLoggerFor(getClass()).error("cannot restore recurrence rule: " + recurrenceRule, e);
        }
       
        String recurrenceExc = kEvent.getRecurrenceExc();
View Full Code Here

    public VEvent getRecessEvent() {
        if (startRecess == null)
            return null;
        VEvent v = new VEvent(getStartRecessDate(), "Recess Week");
        PropertyList pl = v.getProperties();
        pl.add(new RRule(new Recur(Recur.DAILY, 5)));
        try {
            UidGenerator ug = new UidGenerator("1");
            pl.add(ug.generateUid());
        } catch (SocketException ex) {
        }
View Full Code Here

        pl.add(new Summary(course.getCourseName() + " " + ct.getClassType()
                + " " + ct.getRemark()));
        String[] split = ct.getSemesterTimetable().getStartExam().split("-");
        String str = split[0] + split[1] + split[2];
        try {
            pl.add(new RRule(new Recur(Recur.WEEKLY, new Date(str))));
        } catch (ParseException ex) {
            Logger.getLogger(ClassVEvent.class).error("Error when parsing "
                    + "recurrence rule for " + course.getCourseName()
                    + " class timetable", ex);
        }
View Full Code Here

            if(EventCalendarVO.ParticipiantType.HOST.equals(vo.getParticipiantType())) {
                mainCalendar = vo.getCalendar();
            }
        }
       
        Recur recur = new Recur("");
        if(event.getRecurrenceCycleUnit() == EventVO.RecurrenceUnit.DAY)
            recur.setFrequency(Recur.DAILY);
        else if(event.getRecurrenceCycleUnit() == EventVO.RecurrenceUnit.WEEK)
            recur.setFrequency(Recur.WEEKLY);
        else if(event.getRecurrenceCycleUnit() == EventVO.RecurrenceUnit.MONTH)
            recur.setFrequency(Recur.MONTHLY);
        else if(event.getRecurrenceCycleUnit() == EventVO.RecurrenceUnit.YEAR)
            recur.setFrequency(Recur.YEARLY);
       
        if(event.getRecurrenceCycle() != null)
            recur.setInterval(event.getRecurrenceCycle());
       
        if(event.getRecurrenceType() == RecurrenceType.UNTIL_DATE)
            recur.setUntil(new Date(event.getRecurrenceEndDate()));
        else if(event.getRecurrenceType() == RecurrenceType.NUMBER_OF_TIMES)
            recur.setCount(event.getRecurrenceNumberOfTimes());
       
        for(RecurrenceInWeek day : event.getRecurrenceInWeek())
        {
            if (day.getCalendarValue() == java.util.Calendar.MONDAY)
                recur.getDayList().add(new WeekDay("MO"));
            if (day.getCalendarValue() == java.util.Calendar.TUESDAY)
                recur.getDayList().add(new WeekDay("TU"));
            if (day.getCalendarValue() == java.util.Calendar.WEDNESDAY)
                recur.getDayList().add(new WeekDay("WE"));
            if (day.getCalendarValue() == java.util.Calendar.THURSDAY)
                recur.getDayList().add(new WeekDay("TH"));
            if (day.getCalendarValue() == java.util.Calendar.FRIDAY)
                recur.getDayList().add(new WeekDay("FR"));
            if (day.getCalendarValue() == java.util.Calendar.SATURDAY)
                recur.getDayList().add(new WeekDay("SA"));
            if (day.getCalendarValue() == java.util.Calendar.SUNDAY)
                recur.getDayList().add(new WeekDay("SU"));
        }
        
        if(event.getRecurrenceInMonth() == EventVO.RecurrenceInMonth.DAY_OF_MONTH)
        {
            java.util.Calendar cal = GregorianCalendar.getInstance();
            cal.setFirstDayOfWeek(mainCalendar.getFirstDayOfWeek().getDay());
            cal.setTime(event.getStartDate());
            recur.getMonthDayList().add(cal.get(java.util.Calendar.DAY_OF_MONTH));
        }
        else if(event.getRecurrenceInMonth() == EventVO.RecurrenceInMonth.DAY_OF_WEEK)
        {
            java.util.Calendar cal = GregorianCalendar.getInstance();
            cal.setFirstDayOfWeek(mainCalendar.getFirstDayOfWeek().getDay());
            cal.setTime(event.getStartDate());
            int week = cal.get(java.util.Calendar.WEEK_OF_MONTH);
            int day = cal.get(java.util.Calendar.DAY_OF_WEEK);
            if (day== java.util.Calendar.MONDAY)
                recur.getDayList().add(new WeekDay(week + "MO"));
            if (day == java.util.Calendar.TUESDAY)
                recur.getDayList().add(new WeekDay(week + "TU"));
            if (day == java.util.Calendar.WEDNESDAY)
                recur.getDayList().add(new WeekDay(week + "WE"));
            if (day == java.util.Calendar.THURSDAY)
                recur.getDayList().add(new WeekDay(week + "TH"));
            if (day == java.util.Calendar.FRIDAY)
                recur.getDayList().add(new WeekDay(week + "FR"));
            if (day == java.util.Calendar.SATURDAY)
                recur.getDayList().add(new WeekDay(week + "SA"));
            if (day == java.util.Calendar.SUNDAY)
                recur.getDayList().add(new WeekDay(week + "SU"));
        }
       
        recur.setWeekStartDay("MO");
        return new RRule(recur);
    }
View Full Code Here

     * @param event the event to save the reccurences
     * @throws ParseException
     */
    private void readRecur(String rrule, EventVO event) throws ParseException
    {
        Recur recur = new Recur(rrule);
       
        if(recur.getInterval() > 0)
            event.setRecurrenceCycle(recur.getInterval());
       
        if(recur.getUntil() != null)
        {
            event.setRecurrenceUntilDate(recur.getUntil());
            event.setRecurrenceType(RecurrenceType.UNTIL_DATE);
        }
        else if(recur.getCount() != -1)
        {
            event.setRecurrenceNumberOfTimes(recur.getCount());
            event.setRecurrenceType(RecurrenceType.NUMBER_OF_TIMES);
        }
        else
            event.setRecurrenceType(RecurrenceType.FOREVER);
           
        if(recur.getFrequency().equals(Recur.DAILY))
        {
            event.setRecurrenceCycleUnit(RecurrenceUnit.DAY);
        }     
        else if(recur.getFrequency().equals(Recur.WEEKLY))
        {
            event.setRecurrenceCycleUnit(RecurrenceUnit.WEEK);
            if(recur.getDayList().contains(new WeekDay("MO")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.MONDAY);
            if(recur.getDayList().contains(new WeekDay("TU")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.TUESDAY);
            if(recur.getDayList().contains(new WeekDay("WE")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.WEDNESDAY);
            if(recur.getDayList().contains(new WeekDay("TH")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.THURSDAY);
            if(recur.getDayList().contains(new WeekDay("FR")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.FRIDAY);
            if(recur.getDayList().contains(new WeekDay("SA")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.SATURDAY);
            if(recur.getDayList().contains(new WeekDay("SU")))
                event.getRecurrenceInWeek().add(RecurrenceInWeek.SUNDAY);
        }
        else if(recur.getFrequency().equals(Recur.MONTHLY))
        {
            event.setRecurrenceCycleUnit(RecurrenceUnit.MONTH);
            if(recur.getDayList().isEmpty())
                event.setRecurrenceInMonth(RecurrenceInMonth.DAY_OF_MONTH);
            else
                event.setRecurrenceInMonth(RecurrenceInMonth.DAY_OF_WEEK);
        }
        else if(recur.getFrequency().equals(Recur.YEARLY))
        {
            event.setRecurrenceCycleUnit(RecurrenceUnit.YEAR);
        }    
    }
View Full Code Here

        event.setStart(startDate);
        event.setEnd(endDate);

        String recurrence = null;
        if (eventDO.hasRecurrence() == true) {
          final Recur recur = eventDO.getRecurrenceObject();
          final TeamEventRecurrenceData recurrenceData = new TeamEventRecurrenceData(recur, PFUserContext.getTimeZone());
          final RecurrenceFrequency frequency = recurrenceData.getFrequency();
          if (frequency != null) {
            final String unitI18nKey = frequency.getUnitI18nKey();
            if (unitI18nKey != null) {
View Full Code Here

TOP

Related Classes of net.fortuna.ical4j.model.Recur

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.