From 0fccc15b35590bc042db95f38b8fd9ae5b789e48 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9rome=20Perrin?= <jerome@nexedi.com>
Date: Thu, 5 Aug 2010 12:48:05 +0000
Subject: [PATCH] test movement using interface

git-svn-id: https://svn.erp5.org/repos/public/erp5/sandbox/amount_generator@37541 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5/Document/SolverProcess.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/product/ERP5/Document/SolverProcess.py b/product/ERP5/Document/SolverProcess.py
index ab58951734..bff342bda4 100644
--- a/product/ERP5/Document/SolverProcess.py
+++ b/product/ERP5/Document/SolverProcess.py
@@ -32,6 +32,7 @@ from AccessControl import ClassSecurityInfo
 from Products.ERP5Type import Permissions, PropertySheet, interfaces
 from Products.ERP5Type.XMLObject import XMLObject
 from Products.CMFActivity.ActiveProcess import ActiveProcess
+from Products.ERP5.interfaces.movement import IMovement
 
 class SolverProcess(XMLObject, ActiveProcess):
   """
@@ -216,11 +217,12 @@ class SolverProcess(XMLObject, ActiveProcess):
     if not isinstance(delivery_or_movement, (tuple, list)):
       delivery_or_movement = [delivery_or_movement]
     movement_list = []
+    isMovement = IMovement.providedBy
     for x in delivery_or_movement:
-      if x.isDelivery():
-        movement_list.extend(x.getMovementList())
-      else:
+      if isMovement(x):
         movement_list.append(x)
+      else:
+        movement_list.extend(x.getMovementList())
 
     # We suppose here that movement_list is a list of
     # delivery movements. Let us group decisions in such way
-- 
2.30.9