[Erp5-report] r15102 - /erp5/trunk/products/ERP5SyncML/Subscription.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jul 2 12:38:55 CEST 2007


Author: nicolas
Date: Mon Jul  2 12:38:54 2007
New Revision: 15102

URL: http://svn.erp5.org?rev=15102&view=rev
Log:
use id to getObjectList

Modified:
    erp5/trunk/products/ERP5SyncML/Subscription.py

Modified: erp5/trunk/products/ERP5SyncML/Subscription.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5SyncML/Subscription.py?rev=15102&r1=15101&r2=15102&view=diff
==============================================================================
--- erp5/trunk/products/ERP5SyncML/Subscription.py (original)
+++ erp5/trunk/products/ERP5SyncML/Subscription.py Mon Jul  2 12:38:54 2007
@@ -1029,18 +1029,20 @@
     signature = self.getSignatureFromGid(gid)
     # First look if we do already have the mapping between
     # the id and the gid
-    #XXX Slow !!!
-    object_list = self.getObjectList(gid=gid)
     destination = self.getDestination()
     if signature is not None and signature.getPath() is not None:
-      o_id = signature.getObjectId()
       o = None
       try:
         o = destination.getPortalObject().restrictedTraverse(signature.getPath())
       except (AttributeError, KeyError, TypeError):
         pass
+      o_id = signature.getObjectId()
+      #try with id param too, because gid is not catalogged
+      object_list = self.getObjectList(gid = gid, id = o_id)
       if o is not None and o in object_list:
         return o
+    #XXX Slow !!!
+    object_list = self.getObjectList(gid = gid)
     for o in object_list:
       o_gid = self.getGidFromObject(o)
       if o_gid == gid:




More information about the Erp5-report mailing list