[CalendarServer-changes] [10870] CalendarServer/branches/users/gaya/sharedgroups/txdav

source_changes at macosforge.org source_changes at macosforge.org
Thu Mar 7 16:32:09 PST 2013


Revision: 10870
          http://trac.calendarserver.org//changeset/10870
Author:   gaya at apple.com
Date:     2013-03-07 16:32:09 -0800 (Thu, 07 Mar 2013)
Log Message:
-----------
redirect owned addressbook _created and _modified attrs to ab home

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

Modified: CalendarServer/branches/users/gaya/sharedgroups/txdav/carddav/datastore/sql.py
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups/txdav/carddav/datastore/sql.py	2013-03-07 23:12:54 UTC (rev 10869)
+++ CalendarServer/branches/users/gaya/sharedgroups/txdav/carddav/datastore/sql.py	2013-03-08 00:32:09 UTC (rev 10870)
@@ -196,11 +196,7 @@
     @inlineCallbacks
     def createdHome(self):
         # initialize address book properties, synctoken
-        child = self.addressbook()
-        #FIXME:  define as same property
-        child._created = self._created
-        child._modified = self._modified
-        yield child._initSyncToken()
+        yield self.addressbook()._initSyncToken()
 
 
     @inlineCallbacks
@@ -283,6 +279,66 @@
         self._index = PostgresLegacyABIndexEmulator(self)
         self._bindName = bindName
 
+
+        def getCreated():
+            if self._resourceID == self._home._resourceID:
+                return self._home.created()
+            else:
+                return self._created
+
+
+        def setCreated(newValue):
+            if self._resourceID == self._home._resourceID:
+                self._home._created = newValue
+            else:
+                self._created = newValue
+
+
+        def getModified():
+            if self._resourceID == self._home._resourceID:
+                return self._home.created()
+            else:
+                return self._modified
+
+
+        def setModified(newValue):
+            if self._resourceID == self._home._resourceID:
+                self._home._modified = newValue
+            else:
+                self._modified = newValue
+
+        _created = property(self.getCreated, self.setCreated,)
+        _modified = property(self.getModified, self.setModified,)
+
+
+    def getCreated(self):
+        if self._resourceID == self._home._resourceID:
+            return self._home.created()
+        else:
+            return self._created
+
+
+    def setCreated(self, newValue):
+        if self._resourceID == self._home._resourceID:
+            self._home._created = newValue
+        else:
+            self._created = newValue
+
+
+    def getModified(self):
+        if self._resourceID == self._home._resourceID:
+            return self._home.created()
+        else:
+            return self._modified
+
+
+    def setModified(self, newValue):
+        if self._resourceID == self._home._resourceID:
+            self._home._modified = newValue
+        else:
+            self._modified = newValue
+
+
     @property
     def _addressbookHome(self):
         return self._home
@@ -1041,7 +1097,6 @@
                         self._txn, homeID=shareeView._home._resourceID, addressbookID=shareeView._resourceID
                 )))
 
-            #TODO:  with bit of parameter wrangling, call shareWith() here instead.
             sharedname = yield self._updateBindColumnsQuery(columnMap).on(
                 self._txn,
                 resourceID=self._resourceID, homeID=shareeView._home._resourceID
@@ -1999,7 +2054,6 @@
 
     @classproperty
     def _addressbookIDForResourceID(cls): #@NoSelf
-        #TODO: This query could be part of previously called query using object schema join
         obj = cls._objectSchema
         return Select([obj.PARENT_RESOURCE_ID],
                       From=obj,

Modified: CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql.py
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql.py	2013-03-07 23:12:54 UTC (rev 10869)
+++ CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql.py	2013-03-08 00:32:09 UTC (rev 10870)
@@ -2801,7 +2801,6 @@
         returnValue(result)
 
 
-
     def shareMode(self):
         """
         @see: L{ICalendar.shareMode}
@@ -2912,6 +2911,7 @@
         self._notifiers = notifiers
         self._index = None  # Derived classes need to set this
 
+
     @classmethod
     @inlineCallbacks
     def listObjects(cls, home):
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20130307/81b494ae/attachment-0001.html>


More information about the calendarserver-changes mailing list