[Erp5-report] r29776 - /erp5/trunk/products/ERP5/Tool/CategoryTool.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Oct 19 09:27:55 CEST 2009


Author: kazuhiko
Date: Mon Oct 19 09:27:52 2009
New Revision: 29776

URL: http://svn.erp5.org?rev=29776&view=rev
Log:
use caching_instance_method decorator with a more efficient cache_id generator.

Modified:
    erp5/trunk/products/ERP5/Tool/CategoryTool.py

Modified: erp5/trunk/products/ERP5/Tool/CategoryTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Tool/CategoryTool.py?rev=29776&r1=29775&r2=29776&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Tool/CategoryTool.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Tool/CategoryTool.py [utf8] Mon Oct 19 09:27:52 2009
@@ -38,7 +38,7 @@
 from Products.ERP5Type import Permissions
 from Products.ERP5Type.CopySupport import CopyContainer
 from Products.CMFCore.utils import getToolByName
-from Products.ERP5Type.Cache import CachingMethod
+from Products.ERP5Type.Cache import caching_instance_method
 
 from zLOG import LOG
 
@@ -127,15 +127,14 @@
     security.declareProtected(Permissions.AccessContentsInformation, 'getUids')
     getUids = getCategoryParentUidList
 
+    @caching_instance_method(id='portal_categories.getBaseCategoryDict', cache_factory='erp5_content_long', cache_id_generator=lambda m, *a, **k:m)
     def getBaseCategoryDict(self):
       """
         Cached method to which resturns a dict with category names as keys, and None as values.
         This allows to search for an element existence in the list faster.
         ie: if x in self.getPortalObject().portal_categories.getBaseCategoryDict()
       """
-      def getBaseCategoryDict(self):
-        return dict.fromkeys(self.getBaseCategoryList(), None)
-      return CachingMethod(getBaseCategoryDict, 'portal_categories.getBaseCategoryDict', cache_factory='erp5_content_long')(self)
+      return dict.fromkeys(self.getBaseCategoryList(), None)
 
     def updateRelatedContent(self, context,
                              previous_category_url, new_category_url):




More information about the Erp5-report mailing list