[Erp5-report] r24190 - /erp5/trunk/products/ERP5/InteractionWorkflow.py

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Oct 15 12:39:58 CEST 2008


Author: nicolas
Date: Wed Oct 15 12:39:54 2008
New Revision: 24190

URL: http://svn.erp5.org?rev=24190&view=rev
Log:
Code optimisation

Modified:
    erp5/trunk/products/ERP5/InteractionWorkflow.py

Modified: erp5/trunk/products/ERP5/InteractionWorkflow.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/InteractionWorkflow.py?rev=24190&r1=24189&r2=24190&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/InteractionWorkflow.py (original)
+++ erp5/trunk/products/ERP5/InteractionWorkflow.py Wed Oct 15 12:39:54 2008
@@ -293,25 +293,25 @@
                   value = expr(econtext)
                 status[id] = value
 
+              sci = StateChangeInfo(
+                    ob, self, former_status, tdef, None, None, kwargs=kw)
               # Execute the "after" script.
               for script_name in tdef.after_script_name:
                 script = self.scripts[script_name]
                 # Pass lots of info to the script in a single parameter.
-                sci = StateChangeInfo(
-                    ob, self, former_status, tdef, None, None, kwargs=kw)
                 script(sci)  # May throw an exception
 
               # Execute Before Commit
+              transaction = get_transaction()
               for script_name in tdef.before_commit_script_name:
-                method = getattr(self, 'activeScript')
-                get_transaction().beforeCommitHook(method, script_name,
-                                                   ob.getRelativeUrl(),
-                                                   status, tdef.id, kw)
+                script = self.scripts[script_name]
+                transaction.beforeCommitHook(script, sci)
 
               # Execute "activity" scripts
               for script_name in tdef.activate_script_name:
                 self.activate(activity='SQLQueue')\
-                    .activeScript(script_name, ob.getRelativeUrl(), status, tdef.id)
+                    .activeScript(script_name, ob.getRelativeUrl(),
+                                  status, tdef.id, kw)
 
     security.declarePrivate('activeScript')
     def activeScript(self, script_name, ob_url, status, tdef_id, kwargs=None):




More information about the Erp5-report mailing list