[Erp5-report] r42365 nicolas.dumazet - /erp5/trunk/products/ERP5Type/Utils.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jan 17 06:48:20 CET 2011


Author: nicolas.dumazet
Date: Mon Jan 17 06:48:20 2011
New Revision: 42365

URL: http://svn.erp5.org?rev=42365&view=rev
Log:
accessor generation: be more tolerant when some tools are missing

This is required to be able to bootstrap without dying.
In reality, localized accessors, or related category getters are not required
to run a site / install erp5_core and can be regenerated later.

Modified:
    erp5/trunk/products/ERP5Type/Utils.py

Modified: erp5/trunk/products/ERP5Type/Utils.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Utils.py?rev=42365&r1=42364&r2=42365&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Utils.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Utils.py [utf8] Mon Jan 17 06:48:20 2011
@@ -1258,7 +1258,12 @@ def getExistingBaseCategoryList(portal, 
   cache = getReadOnlyTransactionCache()
   if cache is None:
     cache = getTransactionalVariable()
-  category_tool = portal.portal_categories
+  category_tool = getattr(portal, 'portal_categories', None)
+  if category_tool is None:
+    # most likely, accessor generation when bootstrapping a site
+    warnings.warn("Category Tool is missing. Accessors can not be generated.")
+    return ()
+
   new_base_cat_list = []
   for base_cat in base_cat_list:
     key = (base_cat,)
@@ -2872,7 +2877,12 @@ def createTranslationLanguageAccessors(p
   """
   accessor_dict_list = []
 
-  for language in portal.Localizer.get_languages():
+  localizer = getattr(portal, 'Localizer', None)
+  if localizer is None:
+    warnings.warn("Localizer is missing. Accessors can not be generated.")
+    return
+
+  for language in localizer.get_languages():
     language_key = language.replace('-', '_')
     composed_id = '%s_translated_%s' % (language_key, property['id'])
     capitalised_compose_id = UpperCase(composed_id)



More information about the Erp5-report mailing list