[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r8462 - trunk/gnue-appserver/src
From: |
reinhard |
Subject: |
[gnue] r8462 - trunk/gnue-appserver/src |
Date: |
Mon, 15 May 2006 06:37:04 -0500 (CDT) |
Author: reinhard
Date: 2006-05-15 06:37:04 -0500 (Mon, 15 May 2006)
New Revision: 8462
Modified:
trunk/gnue-appserver/src/geasList.py
Log:
Switched to using iterator support of data.py
Modified: trunk/gnue-appserver/src/geasList.py
===================================================================
--- trunk/gnue-appserver/src/geasList.py 2006-05-15 09:07:49 UTC (rev
8461)
+++ trunk/gnue-appserver/src/geasList.py 2006-05-15 11:37:04 UTC (rev
8462)
@@ -44,6 +44,7 @@
self.__classdef = classdef
self.__connection = connection
self.__recordset = recordset
+ self.__generator = recordset.__iter__()
self.__prefetch = propertylist # property names to be prefetched
self.__condition = condition
self.__instances = []
@@ -164,23 +165,24 @@
to the list's condition. This instance will be returned as function result.
"""
- record = self.__recordset.nextRecord ()
+ while True:
+ try:
+ record = self.__generator.next ()
+ except StopIteration:
+ # No more records
+ self.__isComplete = True
+ self.__length = len (self.__instances)
+ self.__recordset.close ()
+ self.__recordset = None
+ return None
- while record is not None:
+ # Found a record - check condition
instance = geasInstance.geasInstance (self.__session, self.__connection,
record, self.__classdef)
if self.__condition is None or self.__condition.evaluate (instance):
return instance
- record = self.__recordset.nextRecord ()
- # No more records
- self.__isComplete = True
- self.__length = len (self.__instances)
- self.__recordset.close ()
- self.__recordset = None
- return None
-
# ---------------------------------------------------------------------------
# Get a grouping sequence for an instance
# ---------------------------------------------------------------------------
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r8462 - trunk/gnue-appserver/src,
reinhard <=