[CalendarServer-changes] [13637] CalendarServer/trunk/twistedcaldav/directory

source_changes at macosforge.org source_changes at macosforge.org
Fri Jun 13 14:13:05 PDT 2014


Revision: 13637
          http://trac.calendarserver.org//changeset/13637
Author:   sagen at apple.com
Date:     2014-06-13 14:13:05 -0700 (Fri, 13 Jun 2014)
Log Message:
-----------
Removing unused delegate assignment deletion code

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/directory/calendaruserproxy.py
    CalendarServer/trunk/twistedcaldav/directory/test/test_proxyprincipaldb.py

Modified: CalendarServer/trunk/twistedcaldav/directory/calendaruserproxy.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/calendaruserproxy.py	2014-06-13 13:36:18 UTC (rev 13636)
+++ CalendarServer/trunk/twistedcaldav/directory/calendaruserproxy.py	2014-06-13 21:13:05 UTC (rev 13637)
@@ -28,7 +28,6 @@
 ]
 
 import itertools
-import time
 import uuid
 
 from twext.python.log import Logger
@@ -531,34 +530,7 @@
         def deleteMembership(self, guid):
             return self.delete("memberships:%s" % (str(guid),))
 
-        def setDeletionTimer(self, guid, delay):
-            return self.set("del:%s" % (str(guid),), str(self.getTime() + delay))
 
-        def checkDeletionTimer(self, guid):
-            # True means it's overdue, False means it's not, None means no timer
-            def _value(value):
-                if value:
-                    if int(value) <= self.getTime():
-                        return True
-                    else:
-                        return False
-                else:
-                    return None
-            d = self.get("del:%s" % (str(guid),))
-            d.addCallback(_value)
-            return d
-
-        def clearDeletionTimer(self, guid):
-            return self.delete("del:%s" % (str(guid),))
-
-        def getTime(self):
-            if hasattr(self, 'theTime'):
-                theTime = self.theTime
-            else:
-                theTime = int(time.time())
-            return theTime
-
-
     def __init__(self, dbID, dbapiName, dbapiArgs, **kwargs):
         AbstractADBAPIDatabase.__init__(self, dbID, dbapiName, dbapiArgs, True, **kwargs)
 
@@ -642,70 +614,6 @@
             yield self._memcacher.deleteMember(principalUID)
 
 
-    @inlineCallbacks
-    def removePrincipal(self, principalUID, delay=None):
-        """
-        Remove a group membership record.
-
-        @param principalUID: the UID of the principal to remove.
-        """
-        # FIXME: This method doesn't appear to be used anywhere.  Still needed?
-
-        if delay:
-            # We are going to remove the principal only after <delay> seconds
-            # has passed since we first chose to remove it, to protect against
-            # transient directory problems.
-            # If <delay> is specified, first see if there was a timer set
-            # previously.  If the timer is more than delay seconds old, we
-            # go ahead and remove the principal.  Otherwise, do nothing.
-
-            overdue = yield self._memcacher.checkDeletionTimer(principalUID)
-
-            if overdue is False:
-                # Do nothing
-                returnValue(None)
-
-            elif overdue is None:
-                # No timer was previously set
-                self.log.debug("Delaying removal of missing proxy principal '%s'"
-                               % (principalUID,))
-                yield self._memcacher.setDeletionTimer(principalUID, delay=delay)
-                returnValue(None)
-
-        self.log.warn("Removing missing proxy principal for '%s'"
-                      % (principalUID,))
-
-        for suffix in ("calendar-proxy-read", "calendar-proxy-write",):
-            groupUID = "%s#%s" % (principalUID, suffix,)
-            yield self._delete_from_db(groupUID)
-
-            # Update cache
-            members = yield self.getMembers(groupUID)
-            if members:
-                for member in members:
-                    yield self._memcacher.deleteMembership(member)
-                yield self._memcacher.deleteMember(groupUID)
-
-        memberships = (yield self.getMemberships(principalUID))
-        for groupUID in memberships:
-            yield self._memcacher.deleteMember(groupUID)
-
-        yield self._delete_from_db_member(principalUID)
-        yield self._memcacher.deleteMembership(principalUID)
-        yield self._memcacher.clearDeletionTimer(principalUID)
-
-
-    def refreshPrincipal(self, principalUID):
-        """
-        Bring back to life a principal that was previously deleted.
-
-        @param principalUID:
-        @type principalUID:
-        """
-
-        return self._memcacher.clearDeletionTimer(principalUID)
-
-
     def getMembers(self, principalUID):
         """
         Return the list of group member UIDs for the specified principal.

Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_proxyprincipaldb.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_proxyprincipaldb.py	2014-06-13 13:36:18 UTC (rev 13636)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_proxyprincipaldb.py	2014-06-13 21:13:05 UTC (rev 13637)
@@ -24,6 +24,7 @@
 
 import os
 
+
 class ProxyPrincipalDBSqlite (twistedcaldav.test.util.TestCase):
     """
     Directory service provisioned principals.
@@ -333,50 +334,7 @@
             yield db.clean()
 
 
-    @inlineCallbacks
-    def test_cachingDBRemovePrincipal(self):
 
-        for processType in ("Single", "Combined",):
-            config.ProcessType = processType
-
-            # Get the DB
-            db_path = os.path.abspath(self.mktemp())
-            db = ProxySqliteDB(db_path)
-
-            # Do one insert and check the result
-            yield db.setGroupMembers("A", ("B", "C", "D",))
-            yield db.setGroupMembers("X", ("B", "C",))
-
-            membersA = yield db.getMembers("A")
-            membersX = yield db.getMembers("X")
-            membershipsB = yield db.getMemberships("B")
-            membershipsC = yield db.getMemberships("C")
-            membershipsD = yield db.getMemberships("D")
-
-            self.assertEqual(membersA, set(("B", "C", "D",)))
-            self.assertEqual(membersX, set(("B", "C",)))
-            self.assertEqual(membershipsB, set(("A", "X",)))
-            self.assertEqual(membershipsC, set(("A", "X",)))
-            self.assertEqual(membershipsD, set(("A",)))
-
-            # Remove and check the result
-            yield db.removePrincipal("B")
-
-            membersA = yield db.getMembers("A")
-            membersX = yield db.getMembers("X")
-            membershipsB = yield db.getMemberships("B")
-            membershipsC = yield db.getMemberships("C")
-            membershipsD = yield db.getMemberships("D")
-
-            self.assertEqual(membersA, set(("C", "D",)))
-            self.assertEqual(membersX, set(("C",)))
-            self.assertEqual(membershipsB, set())
-            self.assertEqual(membershipsC, set(("A", "X",)))
-            self.assertEqual(membershipsD, set(("A",),))
-
-            yield db.clean()
-
-
     @inlineCallbacks
     def test_cachingDBInsertUncached(self):
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20140613/26fa2816/attachment.html>


More information about the calendarserver-changes mailing list