* there were two ways to get packages of the component.

component.packages - returns this component's packages.
  component.get_packages() - returns also added underlying components' packages.

  this is confusing. unify these with added "walk" parameter to get_packages()
  default get_packages will return this component's packages.
This commit is contained in:
Faik Uygur
2006-10-13 06:53:37 +00:00
parent d6b9209b83
commit ad3ab31bc7
2 changed files with 8 additions and 3 deletions
+1 -1
View File
@@ -1265,7 +1265,7 @@ all repositories.
component = ctx.get_option('component') component = ctx.get_option('component')
if component: if component:
list = ctx.componentdb.get_packages(component, repo) list = ctx.componentdb.get_packages(component, repo=repo)
else: else:
list = ctx.packagedb.list_packages(repo) list = ctx.packagedb.list_packages(repo)
installed_list = ctx.installdb.list_installed() installed_list = ctx.installdb.list_installed()
+7 -2
View File
@@ -121,11 +121,16 @@ class ComponentDB(object):
def list_components(self, repo=None): def list_components(self, repo=None):
return self.d.list(repo) return self.d.list(repo)
def get_packages(self, component_name, repo=None, txn = None): # Returns the package list of the component
# walk: walks through the underlying components' packages
def get_packages(self, component_name, walk=False, repo=None, txn = None):
"""returns the given component's and underlying recursive components' packages""" """returns the given component's and underlying recursive components' packages"""
packages = []
component = self.get_component(component_name, repo, txn) component = self.get_component(component_name, repo, txn)
if not walk:
return component.packages
packages = []
packages.extend(component.packages) packages.extend(component.packages)
for dep in component.dependencies: for dep in component.dependencies:
packages.extend(self.get_packages(dep)) packages.extend(self.get_packages(dep))