[yum-cvs] yum/yum __init__.py, 1.271, 1.272 transactioninfo.py, 1.33, 1.34

Jeremy Katz katzj at linux.duke.edu
Sat Feb 3 15:44:24 UTC 2007


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

Modified Files:
	__init__.py transactioninfo.py 
Log Message:
make conditionals not a subclass since we really don't want to have to deal
with that in the inheritance chain.  also, it doesn't really make any
difference since we only add to conditionals if the config option is set



Index: __init__.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/__init__.py,v
retrieving revision 1.271
retrieving revision 1.272
diff -u -r1.271 -r1.272
--- __init__.py	3 Feb 2007 15:37:38 -0000	1.271
+++ __init__.py	3 Feb 2007 15:44:22 -0000	1.272
@@ -78,8 +78,6 @@
 
     def _transactionDataFactory(self):
         """Factory method returning TransactionData object"""
-        if self.conf.enable_group_conditionals:
-            return transactioninfo.ConditionalTransactionData()
         return transactioninfo.TransactionData()
 
     def doGenericSetup(self, cache=0):

Index: transactioninfo.py
===================================================================
RCS file: /home/groups/yum/cvs/yum/yum/transactioninfo.py,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- transactioninfo.py	3 Mar 2006 21:59:58 -0000	1.33
+++ transactioninfo.py	3 Feb 2007 15:44:22 -0000	1.34
@@ -21,6 +21,8 @@
 # with the given txmbr. 
 
 from constants import *
+import Errors
+import warnings
 
 class TransactionData:
     """Data Structure designed to hold information on a yum Transaction Set"""
@@ -32,6 +34,8 @@
         self.pkgdict = {} # key = pkgtup, val = list of TransactionMember obj
         self.debug = 0
         self.changed = False
+        
+        self.conditionals = {} # key = pkgname, val = list of pos to add
 
     def __len__(self):
         return len(self.pkgdict.values())
@@ -127,6 +131,12 @@
         self.pkgdict[txmember.pkgtup].append(txmember)
         self.changed = True
 
+        if self.conditionals.has_key(txmember.name):
+            for po in self.conditionals[txmember.name]:
+                condtxmbr = self.addInstall(po)
+                condtxmbr.setAsDep(po=txmember.po)
+        
+
     def remove(self, pkgtup):
         """remove a package from the transaction"""
         if not self.pkgdict.has_key(pkgtup):
@@ -301,19 +311,11 @@
 class ConditionalTransactionData(TransactionData):
     """A transaction data implementing conditional package addition"""
     def __init__(self):
-        # Key: package name to trigger condition
-        # Value: list of package objects to add
-        self.conditionals = {}
+        warnings.warn("ConditionalTransactionData will go away in a future "
+                      "version of Yum.", Errors.YumFutureDeprecationWarning)
         TransactionData.__init__(self)
 
-    def add(self, txmember):
-        TransactionData.add(self, txmember)
-        if self.conditionals.has_key(txmember.name):
-            for po in self.conditionals[txmember.name]:
-                condtxmbr = self.addInstall(po)
-                condtxmbr.setAsDep(po=txmember.po)
-
-class SortableTransactionData(ConditionalTransactionData):
+class SortableTransactionData(TransactionData):
     """A transaction data implementing topological sort on it's members"""
     def __init__(self):
         # Cache of sort
@@ -322,7 +324,7 @@
         self.path = []
         # List of loops
         self.loops = []
-        ConditionalTransactionData.__init__(self)
+        TransactionData.__init__(self)
 
     def _visit(self, txmbr):
         self.path.append(txmbr.name)
@@ -344,11 +346,11 @@
 
     def add(self, txmember):
         txmember.sortColour = TX_WHITE
-        ConditionalTransactionData.add(self, txmember)
+        TransactionData.add(self, txmember)
         self._sorted = []
 
     def remove(self, pkgtup):
-        ConditionalTransactionData.remove(self, pkgtup)
+        TransactionData.remove(self, pkgtup)
         self._sorted = []
 
     def sort(self):




More information about the Yum-cvs-commits mailing list