[Bedework-commit] calendarapi r406 - trunk/calCore/src/org/bedework/calcore/hibernate

svnadmin at bedework.org svnadmin at bedework.org
Thu Sep 6 09:52:14 EDT 2007


Author: douglm
Date: 2007-09-06 09:52:13 -0400 (Thu, 06 Sep 2007)
New Revision: 406

Modified:
   trunk/calCore/src/org/bedework/calcore/hibernate/Events.java
Log:
Fix freebusy bug - showing anniversary events.

Modified: trunk/calCore/src/org/bedework/calcore/hibernate/Events.java
===================================================================
--- trunk/calCore/src/org/bedework/calcore/hibernate/Events.java	2007-09-05 14:44:04 UTC (rev 405)
+++ trunk/calCore/src/org/bedework/calcore/hibernate/Events.java	2007-09-06 13:52:13 UTC (rev 406)
@@ -315,7 +315,8 @@
     EventsQueryResult eqr = eventsQuery(calendar, filter,
                                         startDate, endDate,
                                         currentMode, ignoreCreator, null,
-                                        allCalendars, null, getEvents);
+                                        freeBusy, allCalendars,
+                                        null, getEvents);
 
     Collection<CoreEventInfo> ceis = postGetEvents(eqr.es, desiredAccess,
                                                    returnResultAlways);
@@ -326,7 +327,8 @@
 
     /* Now get the annotations and filter them */
     eqr = eventsQuery(calendar, filter, startDate, endDate, currentMode,
-                      ignoreCreator, eqr, allCalendars, null, getAnnotations);
+                      ignoreCreator, eqr, freeBusy, allCalendars,
+                      null, getAnnotations);
 
     ceis.addAll(eqr.flt.postExec(postGetEvents(eqr.es, desiredAccess,
                                                returnResultAlways)));
@@ -338,7 +340,8 @@
       Collection<BwEvent> masters = new TreeSet<BwEvent>();
 
       eqr = eventsQuery(calendar, filter, startDate, endDate, currentMode,
-                        ignoreCreator, eqr, allCalendars, null, getOverrides);
+                        ignoreCreator, eqr, freeBusy, allCalendars,
+                        null, getOverrides);
 
       if (!eqr.es.isEmpty()) {
         Iterator it = eqr.es.iterator();
@@ -349,7 +352,8 @@
       }
 
       eqr = eventsQuery(calendar, filter, startDate, endDate, currentMode,
-                        ignoreCreator, eqr, allCalendars, null, getInstances);
+                        ignoreCreator, eqr, freeBusy, allCalendars,
+                        null, getInstances);
 
       if (!eqr.es.isEmpty()) {
         Iterator it = eqr.es.iterator();
@@ -1756,6 +1760,7 @@
                                         BwDateTime startDate, BwDateTime endDate,
                                         int currentMode, boolean ignoreCreator,
                                         EventsQueryResult eqr,
+                                        boolean freebusy,
                                         boolean allCalendars,
                                         BwEvent master,
                                         int getWhat) throws CalFacadeException {
@@ -1800,6 +1805,13 @@
 
     sb.append(" where ");
 
+    if (freebusy) {
+      sb.append(qevNameMstr);
+      sb.append(".endType <> '");
+      sb.append(BwEvent.endTypeNone);
+      sb.append("' and ");
+    }
+
     /* SEG:   (<date-ranges>) and */
     if (appendDateTerms(sb, qevName, startDate, endDate)) {
       sb.append(" and ");
@@ -1948,7 +1960,8 @@
                                         recurRetrieval.start,
                                         recurRetrieval.end,
                                         currentMode, ignoreCreator, null,
-                                        allCalendars, master, getInstances);
+                                        freeBusy, allCalendars,
+                                        master, getInstances);
 
     /* We have a collection of recurrence instances, each of which has a
      * master event attached. For each unique master we should check it's



More information about the Bedework-commit mailing list