[Neo-report] r2491 vincent - /trunk/neo/client/mq.py

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Dec 9 14:33:06 CET 2010


Author: vincent
Date: Thu Dec  9 14:33:06 2010
New Revision: 2491

Log:
Provide a way to update MQ cache without changing entry level.

Modified:
    trunk/neo/client/mq.py

Modified: trunk/neo/client/mq.py
==============================================================================
--- trunk/neo/client/mq.py [iso-8859-1] (original)
+++ trunk/neo/client/mq.py [iso-8859-1] Thu Dec  9 14:33:06 2010
@@ -341,6 +341,15 @@ class MQ(object):
 
     __delitem__ = invalidate
 
+    def update(self, key, callback):
+        """
+        Update entry without changing its level.
+        """
+        data = self._data[key]
+        if data.level < 0:
+            raise KeyError(key)
+        data.value = callback(data.value)
+
 # Here is a test.
 if __name__ == '__main__':
     import hotshot, hotshot.stats




More information about the Neo-report mailing list