[Erp5-report] r22647 - in /erp5/trunk/products/CMFActivity/Activity: SQLDict.py SQLQueue.py

nobody at svn.erp5.org nobody at svn.erp5.org
Fri Jul 25 10:21:29 CEST 2008


Author: vincent
Date: Fri Jul 25 10:21:29 2008
New Revision: 22647

URL: http://svn.erp5.org?rev=22647&view=rev
Log:
Only validate new messages; All other states are subsequent to a validation (regular of by user's choice by modifying sql tables).
This fixes impossibility to invoke by hand validated messages not being executed when they have a serialization_tage set.

Modified:
    erp5/trunk/products/CMFActivity/Activity/SQLDict.py
    erp5/trunk/products/CMFActivity/Activity/SQLQueue.py

Modified: erp5/trunk/products/CMFActivity/Activity/SQLDict.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/Activity/SQLDict.py?rev=22647&r1=22646&r2=22647&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/Activity/SQLDict.py (original)
+++ erp5/trunk/products/CMFActivity/Activity/SQLDict.py Fri Jul 25 10:21:29 2008
@@ -569,8 +569,11 @@
           method_dict[line_method_id] = 1
           m = self.loadMessage(line.message, uid = line.uid)
           if invoke:
-            # First Validate
-            validate_value = m.validate(self, activity_tool)
+            # First Validate (only if message is marked as new)
+            if line.processing_node == -1:
+              validate_value = m.validate(self, activity_tool)
+            else:
+              validate_value = VALID
 #             LOG('SQLDict.flush validate_value',0,validate_value)
             if validate_value is VALID:
               activity_tool.invoke(m) # Try to invoke the message - what happens if invoke calls flushActivity ??

Modified: erp5/trunk/products/CMFActivity/Activity/SQLQueue.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFActivity/Activity/SQLQueue.py?rev=22647&r1=22646&r2=22647&view=diff
==============================================================================
--- erp5/trunk/products/CMFActivity/Activity/SQLQueue.py (original)
+++ erp5/trunk/products/CMFActivity/Activity/SQLQueue.py Fri Jul 25 10:21:29 2008
@@ -376,8 +376,11 @@
       for m in activity_tool.getRegisteredMessageList(self):
         if object_path == m.object_path and (method_id is None or method_id == m.method_id):
           if invoke:
-            # First Validate
-            validate_value = m.validate(self, activity_tool)
+            # First Validate (only if message is marked as new)
+            if line.processing_node == -1:
+              validate_value = m.validate(self, activity_tool)
+            else:
+              validate_value = VALID
             if validate_value is VALID:
               activity_tool.invoke(m) # Try to invoke the message - what happens if invoke calls flushActivity ??
               if m.is_executed != MESSAGE_EXECUTED:                                                 # Make sure message could be invoked




More information about the Erp5-report mailing list