db: Remove repodb members to avoid caching of RepoDB instance

This commit is contained in:
Fatih Aşıcı
2010-03-24 13:51:22 +00:00
parent 2a512e804f
commit 0ad9c9e676
3 changed files with 9 additions and 10 deletions
+4 -4
View File
@@ -33,10 +33,10 @@ class ComponentDB(lazydb.LazyDB):
component_packages = {}
component_sources = {}
self.repodb = pisi.db.repodb.RepoDB()
repodb = pisi.db.repodb.RepoDB()
for repo in self.repodb.list_repos():
doc = self.repodb.get_repo_doc(repo)
for repo in repodb.list_repos():
doc = repodb.get_repo_doc(repo)
component_nodes[repo] = self.__generate_components(doc)
component_packages[repo] = self.__generate_packages(doc)
component_sources[repo] = self.__generate_sources(doc)
@@ -109,7 +109,7 @@ class ComponentDB(lazydb.LazyDB):
component = pisi.component.Component()
component.parse(self.cdb.get_item(component_name))
for repo in self.repodb.list_repos():
for repo in pisi.db.repodb.RepoDB().list_repos():
try:
component.packages.extend(self.cpdb.get_item(component_name, repo))
except Exception: #FIXME: what exception could we catch here, replace with that.
+3 -3
View File
@@ -32,10 +32,10 @@ class GroupDB(lazydb.LazyDB):
group_nodes = {}
group_components = {}
self.repodb = pisi.db.repodb.RepoDB()
repodb = pisi.db.repodb.RepoDB()
for repo in self.repodb.list_repos():
doc = self.repodb.get_repo_doc(repo)
for repo in repodb.list_repos():
doc = repodb.get_repo_doc(repo)
group_nodes[repo] = self.__generate_groups(doc)
group_components[repo] = self.__generate_components(doc)
+2 -3
View File
@@ -21,7 +21,6 @@ class ItemByRepo:
def __init__(self, dbobj, compressed=False):
self.dbobj = dbobj
self.compressed = compressed
self.repodb = pisi.db.repodb.RepoDB()
def has_repo(self, repo):
return self.dbobj.has_key(repo)
@@ -34,7 +33,7 @@ class ItemByRepo:
return False
def which_repo(self, item):
for r in self.repodb.list_repos():
for r in pisi.db.repodb.RepoDB().list_repos():
if self.dbobj.has_key(r) and self.dbobj[r].has_key(item):
return r
@@ -89,7 +88,7 @@ class ItemByRepo:
yield item, self.dbobj[r][item]
def item_repos(self, repo=None):
repos = self.repodb.list_repos()
repos = pisi.db.repodb.RepoDB().list_repos()
if repo:
repos = [repo]
return repos