[CalendarServer-changes] [6951] CalendarServer/branches/users/glyph/dalify/txdav/common/datastore/ sql.py

source_changes at macosforge.org source_changes at macosforge.org
Wed Feb 16 06:29:33 PST 2011


Revision: 6951
          http://trac.macosforge.org/projects/calendarserver/changeset/6951
Author:   glyph at apple.com
Date:     2011-02-16 06:29:33 -0800 (Wed, 16 Feb 2011)
Log Message:
-----------
dalify the rest of CommonHome.resourceNamesSinceToken

Modified Paths:
--------------
    CalendarServer/branches/users/glyph/dalify/txdav/common/datastore/sql.py

Modified: CalendarServer/branches/users/glyph/dalify/txdav/common/datastore/sql.py
===================================================================
--- CalendarServer/branches/users/glyph/dalify/txdav/common/datastore/sql.py	2011-02-16 14:29:22 UTC (rev 6950)
+++ CalendarServer/branches/users/glyph/dalify/txdav/common/datastore/sql.py	2011-02-16 14:29:33 UTC (rev 6951)
@@ -712,22 +712,17 @@
                     changed_collections.add(path)
 
         # Now deal with shared collections
+        bind = self._bindSchema
+        rev = self._revisionsSchema
         shares = yield self.listSharedChildren()
         for sharename in shares:
             sharetoken = 0 if sharename in changed_collections else token
-            shareID = (yield self._txn.execSQL("""
-                select %(column_RESOURCE_ID)s from %(name)s
-                where
-                  %(column_RESOURCE_NAME)s = %%s and
-                  %(column_HOME_RESOURCE_ID)s = %%s and
-                  %(column_BIND_MODE)s != %%s
-                """ % self._bindTable,
-                [
-                    sharename,
-                    self._resourceID,
-                    _BIND_MODE_OWN
-                ]
-            ))[0][0]
+            shareID = (yield Select(
+                [bind.RESOURCE_ID], From=bind,
+                Where=(bind.RESOURCE_NAME == sharename).And(
+                    bind.HOME_RESOURCE_ID == self._resourceID).And(
+                        bind.BIND_MODE == _BIND_MODE_OWN)
+            ).on(self._txn))[0][0]
             results = [
                 (
                     sharename,
@@ -735,13 +730,11 @@
                     wasdeleted
                 )
                 for name, wasdeleted in
-                (yield self._txn.execSQL("""
-                    select %(column_RESOURCE_NAME)s, %(column_DELETED)s
-                    from %(name)s
-                    where %(column_REVISION)s > %%s and %(column_RESOURCE_ID)s = %%s
-                    """ % self._revisionsTable,
-                    [sharetoken, shareID],
-                )) if name
+                (yield Select([rev.RESOURCE_NAME, rev.DELETED],
+                                 From=rev,
+                                Where=(rev.REVISION > sharetoken).And(
+                                rev.RESOURCE_ID == shareID)).on(self._txn))
+                if name
             ]
 
             for path, name, wasdeleted in results:
@@ -752,7 +745,6 @@
             for path, name, wasdeleted in results:
                 changed.append("%s/%s" % (path, name,))
 
-
         changed.sort()
         deleted.sort()
         returnValue((changed, deleted))
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20110216/44d8d675/attachment-0001.html>


More information about the calendarserver-changes mailing list