[yum-cvs] yum/yum transactioninfo.py,1.37,1.38

Seth Vidal skvidal at linux.duke.edu
Mon Mar 26 04:37:35 UTC 2007


Update of /home/groups/yum/cvs/yum/yum
In directory login1.linux.duke.edu:/tmp/cvs-serv29223

Modified Files:
	transactioninfo.py 
Log Message:

allow getMembers() to return a package sack, optionally.


Index: transactioninfo.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/transactioninfo.py,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- transactioninfo.py	22 Feb 2007 03:47:23 -0000	1.37
+++ transactioninfo.py	26 Mar 2007 04:37:33 -0000	1.38
@@ -21,6 +21,7 @@
 # with the given txmbr. 
 
 from constants import *
+from packageSack import ListPackageSack
 import Errors
 import warnings
 
@@ -62,7 +63,7 @@
             print msg
 
 
-    def getMembers(self, pkgtup=None, output_states=None):
+    def getMembers(self, pkgtup=None, output_states=None, asSack=False):
         """takes an optional package tuple and returns all transaction members 
            matching, no pkgtup means it returns all transaction members"""
         
@@ -72,16 +73,18 @@
                 for p in self.pkgdict[key]:
                     if not output_states or p.output_state in output_states:
                         returnlist.append(p)
+            if asSack:
+                return ListPackageSack(map(lambda x: x.po, returnlist))
             return returnlist
 
+        ret = []
         if self.pkgdict.has_key(pkgtup):
-            ret = []
             for p in self.pkgdict[pkgtup]:
                 if not output_states or p.output_state in output_states:
                     ret.append(p)
-            return ret
-        else:
-            return []
+        if asSack:
+            return ListPackageSack(map(lambda x: x.po, returnlist))
+        return ret
             
     def getMode(self, name=None, arch=None, epoch=None, ver=None, rel=None):
         """returns the mode of the first match from the transaction set, 




More information about the Yum-cvs-commits mailing list