[CalendarServer-changes] [11180] CalendarServer/branches/users/gaya/sharedgroups-3/txdav

source_changes at macosforge.org source_changes at macosforge.org
Tue May 14 15:07:28 PDT 2013


Revision: 11180
          http://trac.calendarserver.org//changeset/11180
Author:   gaya at apple.com
Date:     2013-05-14 15:07:28 -0700 (Tue, 14 May 2013)
Log Message:
-----------
fix addressbook revisions

Modified Paths:
--------------
    CalendarServer/branches/users/gaya/sharedgroups-3/txdav/carddav/datastore/sql.py
    CalendarServer/branches/users/gaya/sharedgroups-3/txdav/common/datastore/sql.py

Modified: CalendarServer/branches/users/gaya/sharedgroups-3/txdav/carddav/datastore/sql.py
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups-3/txdav/carddav/datastore/sql.py	2013-05-14 20:38:48 UTC (rev 11179)
+++ CalendarServer/branches/users/gaya/sharedgroups-3/txdav/carddav/datastore/sql.py	2013-05-14 22:07:28 UTC (rev 11180)
@@ -313,7 +313,9 @@
     def _changesQuery(cls):  #@NoSelf
         rev = cls._revisionsSchema
         return Select(
-            [rev.RESOURCE_NAME, rev.DELETED],
+            [rev.COLLECTION_NAME,
+             rev.RESOURCE_NAME,
+             rev.DELETED],
             From=rev,
             Where=(rev.REVISION > Parameter("token")).And(
                 rev.HOME_RESOURCE_ID == Parameter("resourceID")).And(
@@ -321,28 +323,17 @@
         )
 
     @inlineCallbacks
-    def changesSinceToken(self, token):
-        """
-        return list of (path, name, wasdeleted) of changes since token
-        Subclasses may override
-        """
-        results = [
-            (
-                self.addressbook().name(),
-                name if name else "",
-                wasdeleted
-            )
-            for name, wasdeleted in (
-                yield self._changesQuery.on(
-                    self._txn,
-                    resourceID=self._resourceID,
-                    token=token
-                )
-            )
-        ]
-        returnValue(results)
+    def doChangesQuery(self, token):
 
+        rows = yield self._changesQuery.on(self._txn,
+                                         resourceID=self._resourceID,
+                                         token=token)
 
+        bindName = self.addressbook().name()
+        result = [[bindName] + row for row in rows]
+        returnValue(result)
+
+
 AddressBookHome._register(EADDRESSBOOKTYPE)
 
 

Modified: CalendarServer/branches/users/gaya/sharedgroups-3/txdav/common/datastore/sql.py
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups-3/txdav/common/datastore/sql.py	2013-05-14 20:38:48 UTC (rev 11179)
+++ CalendarServer/branches/users/gaya/sharedgroups-3/txdav/common/datastore/sql.py	2013-05-14 22:07:28 UTC (rev 11180)
@@ -1841,6 +1841,18 @@
 
 
     @inlineCallbacks
+    def doChangesQuery(self, token):
+        """
+            Do the changes query.
+            Subclasses may override.
+        """
+        result = yield self._changesQuery.on(self._txn,
+                                         resourceID=self._resourceID,
+                                         token=token)
+        returnValue(result)
+
+
+    @inlineCallbacks
     def resourceNamesSinceToken(self, token, depth):  #@UnusedVariable
 
         results = [
@@ -1850,9 +1862,7 @@
                 wasdeleted
             )
             for path, collection, name, wasdeleted in
-            (yield self._changesQuery.on(self._txn,
-                                         resourceID=self._resourceID,
-                                         token=token))
+            (yield self.doChangesQuery(token))
         ]
 
         deleted = []
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20130514/2adad115/attachment.html>


More information about the calendarserver-changes mailing list