[Yum-devel] [PATCH 4/5] Add pkgtupByKeyData, so we don't have to create package objects
James Antill
james at and.org
Mon Aug 17 15:33:39 UTC 2009
---
yum/sqlitesack.py | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/yum/sqlitesack.py b/yum/sqlitesack.py
index 4d8ac0a..1edf2ab 100644
--- a/yum/sqlitesack.py
+++ b/yum/sqlitesack.py
@@ -725,6 +725,19 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
pkgkeys.append(pkgKey)
return self._key2pkg[repo][data['pkgKey']]
+ def _pkgtupByKeyData(self, repo, pkgKey, data):
+ """ Like _packageByKeyData() but we don't create the package, we just
+ return the pkgtup. """
+ if self._pkgExcludedRKD(repo, pkgKey, data):
+ return None
+ if repo not in self._key2pkg:
+ self._key2pkg[repo] = {}
+ self._pkgname2pkgkeys[repo] = {}
+ if data['pkgKey'] in self._key2pkg.get(repo, {}):
+ return self._key2pkg[repo][data['pkgKey']].pkgtup
+ return (data['name'], data['arch'],
+ data['epoch'], data['version'], data['release'])
+
def _packagesByName(self, pkgname):
""" Load all pkgnames from cache, with a given name. """
ret = []
--
1.6.2.5
More information about the Yum-devel
mailing list