[CalendarServer-changes] [6111] CalendarServer/trunk/txcaldav/calendarstore/postgres.py
source_changes at macosforge.org
source_changes at macosforge.org
Wed Aug 18 11:20:13 PDT 2010
Revision: 6111
http://trac.macosforge.org/projects/calendarserver/changeset/6111
Author: glyph at apple.com
Date: 2010-08-18 11:20:12 -0700 (Wed, 18 Aug 2010)
Log Message:
-----------
give addressbooks a sync token.
Modified Paths:
--------------
CalendarServer/trunk/txcaldav/calendarstore/postgres.py
Modified: CalendarServer/trunk/txcaldav/calendarstore/postgres.py
===================================================================
--- CalendarServer/trunk/txcaldav/calendarstore/postgres.py 2010-08-18 18:09:25 UTC (rev 6110)
+++ CalendarServer/trunk/txcaldav/calendarstore/postgres.py 2010-08-18 18:20:12 UTC (rev 6111)
@@ -2016,6 +2016,8 @@
def setComponent(self, component):
validateAddressBookComponent(self, self._addressbook, component)
+ self._addressbook._updateSyncToken()
+
vCardText = str(component)
self._txn.execSQL(
"update ADDRESSBOOK_OBJECT set VCARD_TEXT = %s "
@@ -2036,11 +2038,11 @@
def md5(self):
- return None
+ return hashlib.md5(self.vCardText()).hexdigest()
def size(self):
- return 0
+ return len(self.vCardText())
def created(self):
@@ -2128,7 +2130,7 @@
-class PostgresAddressBook(object):
+class PostgresAddressBook(SyncTokenHelper):
implements(IAddressBook)
@@ -2247,6 +2249,9 @@
[self._resourceID, name, componentText, component.resourceUID(),
"VCARD"] # component.resourceType()] FIXME: what value(s) here?
)
+
+ self._updateSyncToken()
+
if self._notifier:
self._home._txn.postCommit(self._notifier.notify)
@@ -2260,6 +2265,9 @@
if self._txn._cursor.rowcount == 0:
raise NoSuchObjectResourceError()
self._objects.pop(name, None)
+
+ self._updateSyncToken()
+
if self._notifier:
self._txn.postCommit(self._notifier.notify)
@@ -2279,6 +2287,8 @@
[uid, self._resourceID]
)
self._objects.pop(name, None)
+ self._updateSyncToken()
+
if self._notifier:
self._home._txn.postCommit(self._notifier.notify)
@@ -2445,8 +2455,11 @@
)
addressbookType = ResourceType.addressbook #@UndefinedVariable
- self.addressbookWithName(name).properties()[
+ newAddressbook = self.addressbookWithName(name)
+ newAddressbook.properties()[
PropertyName.fromElement(ResourceType)] = addressbookType
+ newAddressbook._updateSyncToken(True)
+
if self._notifier:
self._txn.postCommit(self._notifier.notify)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20100818/25e28516/attachment-0001.html>
More information about the calendarserver-changes
mailing list