[Erp5-report] r28064 - in /erp5/trunk/products/ERP5: Document/ interfaces/

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jul 13 14:46:16 CEST 2009


Author: luke
Date: Mon Jul 13 14:46:15 2009
New Revision: 28064

URL: http://svn.erp5.org?rev=28064&view=rev
Log:
 - expose getRelatedSimulationMovementValueList, make it public and update business path interface
 - follow this change in classes using private version

Modified:
    erp5/trunk/products/ERP5/Document/BusinessPath.py
    erp5/trunk/products/ERP5/Document/BusinessState.py
    erp5/trunk/products/ERP5/interfaces/business_path.py

Modified: erp5/trunk/products/ERP5/Document/BusinessPath.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/BusinessPath.py?rev=28064&r1=28063&r2=28064&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessPath.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/BusinessPath.py [utf8] Mon Jul 13 14:46:15 2009
@@ -186,7 +186,7 @@
     result = False
     if self.isCompleted(explanation) or self.isFrozen(explanation):
       return False # No need to build what was already built or frozen
-    for simulation_movement in self._getRelatedSimulationMovementValueList(
+    for simulation_movement in self.getRelatedSimulationMovementValueList(
         explanation):
       if simulation_movement.getDeliveryValue() is None:
         result = True
@@ -225,7 +225,52 @@
         'explanation_uid': self._getExplanationUidList(explanation)
       })
 
-  def _getRelatedSimulationMovementValueList(self, explanation): # XXX - What API ?
+  # IBusinessCompletable implementation
+  security.declareProtected(Permissions.AccessContentsInformation,
+      'isCompleted')
+  def isCompleted(self, explanation):
+    """
+      Looks at all simulation related movements
+      and checks the simulation_state of the delivery
+    """
+    acceptable_state_list = self.getCompletedStateList()
+    for movement in self.getRelatedSimulationMovementValueList(explanation):
+      if movement.getSimulationState() not in acceptable_state_list:
+        return False
+    return True
+
+  security.declareProtected(Permissions.AccessContentsInformation,
+      'isPartiallyCompleted')
+  def isPartiallyCompleted(self, explanation):
+    """
+      Looks at all simulation related movements
+      and checks the simulation_state of the delivery
+    """
+    acceptable_state_list = self.getCompletedStateList()
+    for movement in self.getRelatedSimulationMovementValueList(explanation):
+      if movement.getSimulationState() in acceptable_state_list:
+        return True
+    return False
+
+  security.declareProtected(Permissions.AccessContentsInformation,
+      'isFrozen')
+  def isFrozen(self, explanation):
+    """
+      Looks at all simulation related movements
+      and checks if frozen
+    """
+    movement_list = self.getRelatedSimulationMovementValueList(explanation)
+    if len(movement_list) == 0:
+      return False # Nothing to be considered as Frozen
+    for movement in movement_list:
+      if not movement.isFrozen():
+        return False
+    return True
+
+  # IBusinessPath implementation
+  security.declareProtected(Permissions.AccessContentsInformation,
+      'getRelatedSimulationMovementValueList')
+  def getRelatedSimulationMovementValueList(self, explanation):
     """
       Returns all Simulation Movements related to explanation
     """
@@ -243,43 +288,6 @@
               .getCausalityValue() == self])
       return simulation_movement_value_list
 
-  # IBusinessCompletable implementation
-  def isCompleted(self, explanation):
-    """
-      Looks at all simulation related movements
-      and checks the simulation_state of the delivery
-    """
-    acceptable_state_list = self.getCompletedStateList()
-    for movement in self._getRelatedSimulationMovementValueList(explanation):
-      if movement.getSimulationState() not in acceptable_state_list:
-        return False
-    return True
-
-  def isPartiallyCompleted(self, explanation):
-    """
-      Looks at all simulation related movements
-      and checks the simulation_state of the delivery
-    """
-    acceptable_state_list = self.getCompletedStateList()
-    for movement in self._getRelatedSimulationMovementValueList(explanation):
-      if movement.getSimulationState() in acceptable_state_list:
-        return True
-    return False
-
-  def isFrozen(self, explanation):
-    """
-      Looks at all simulation related movements
-      and checks if frozen
-    """
-    movement_list = self._getRelatedSimulationMovementValueList(explanation)
-    if len(movement_list) == 0:
-      return False # Nothing to be considered as Frozen
-    for movement in movement_list:
-      if not movement.isFrozen():
-        return False
-    return True
-
-  # IBusinessPath implementation
   def getExpectedStartDate(self, explanation, predecessor_date=None, *args, **kwargs):
     """
       Returns the expected start date for this

Modified: erp5/trunk/products/ERP5/Document/BusinessState.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/BusinessState.py?rev=28064&r1=28063&r2=28064&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessState.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/BusinessState.py [utf8] Mon Jul 13 14:46:15 2009
@@ -170,7 +170,7 @@
     for path in self.getPredecessorRelatedValueList():
       # XXX When no simulations related to path, what should path.isCompleted return?
       #     if True we don't have way to add remaining trade phases to new movement
-      if not (path._getRelatedSimulationMovementValueList(explanation) and
+      if not (path.getRelatedSimulationMovementValueList(explanation) and
               path.isCompleted(explanation)):
         remaining_trade_phase_list += path.getTradePhaseValueList()
 

Modified: erp5/trunk/products/ERP5/interfaces/business_path.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/interfaces/business_path.py?rev=28064&r1=28063&r2=28064&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/interfaces/business_path.py [utf8] (original)
+++ erp5/trunk/products/ERP5/interfaces/business_path.py [utf8] Mon Jul 13 14:46:15 2009
@@ -55,3 +55,11 @@
     'predecessor_date' can be provided as predecessor date and
      to override the date provided in the task
     """
+
+  def getRelatedSimulationMovementValueList(explanation):
+    """Returns list of values of Simulation Movements related to self
+    and delivery
+
+    explanation - any document related to business path - which bootstraped
+                  process or is related to build of one paths
+    """




More information about the Erp5-report mailing list