From 3ba185018aebd597f2d8c92da6cbeb0d6aac52ad Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Tue, 14 Nov 2006 07:35:29 +0000 Subject: Make fakedbapi support generic metadata instead of just slots. svn path=/main/trunk/; revision=5042 --- pym/portage.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'pym/portage.py') diff --git a/pym/portage.py b/pym/portage.py index 23f51c50d..44e99d7eb 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -4236,10 +4236,13 @@ class fakedbapi(dbapi): def cpv_all(self): return self.cpvdict.keys() - def cpv_inject(self, mycpv, myslot=None): + def cpv_inject(self, mycpv, metadata=None): """Adds a cpv from the list of available packages.""" mycp=cpv_getkey(mycpv) - self.cpvdict[mycpv] = myslot + self.cpvdict[mycpv] = metadata + myslot = None + if metadata: + myslot = metadata.get("SLOT", None) if myslot and mycp in self.cpdict: # If necessary, remove another package in the same SLOT. for cpv in self.cpdict[mycp]: @@ -4276,13 +4279,10 @@ class fakedbapi(dbapi): def aux_get(self, mycpv, wants): if not self.cpv_exists(mycpv): raise KeyError(mycpv) - values = [] - for x in wants: - if x == "SLOT": - values.append(self.cpvdict[mycpv]) - else: - values.append("") - return values + metadata = self.cpvdict[mycpv] + if not metadata: + return ["" for x in wants] + return [metadata.get(x, "") for x in wants] class bindbapi(fakedbapi): def __init__(self, mybintree=None, settings=None): -- cgit v1.2.3-1-g7c22