summaryrefslogtreecommitdiffstats
path: root/src/software/openlmi/software/yumdb/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/software/openlmi/software/yumdb/__init__.py')
-rw-r--r--src/software/openlmi/software/yumdb/__init__.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/software/openlmi/software/yumdb/__init__.py b/src/software/openlmi/software/yumdb/__init__.py
index 35a5870..e9a83c3 100644
--- a/src/software/openlmi/software/yumdb/__init__.py
+++ b/src/software/openlmi/software/yumdb/__init__.py
@@ -48,6 +48,7 @@ from openlmi.software.yumdb.packageinfo import PackageInfo
from openlmi.software.yumdb.packagecheck import PackageFile
from openlmi.software.yumdb.packagecheck import PackageCheck
from openlmi.software.yumdb.process import YumWorker
+from openlmi.software.yumdb.repository import Repository
from openlmi.software.util import singletonmixin
# this may be used as an argument to YumWorker
@@ -321,3 +322,29 @@ class YumDB(singletonmixin.Singleton):
"""
return self._do_job(jobs.YumCheckPackage(pkg))
+ @cmpi_logging.trace_method
+ def get_repository_list(self, kind):
+ """
+ @param kind is one of: jobs.YumGetRepositoryList.SUPPORTED_KINDS
+ @param allow_duplicates says, whether to list all found versions
+ of single package
+ @return [pkg1, pkg2, ...], pkgi is instance of yumdb.Repository
+ """
+ return self._do_job(jobs.YumGetRepositoryList(kind))
+
+ @cmpi_logging.trace_method
+ def filter_repositories(self, kind, **filters):
+ """
+ Similar to get_repository_list(), but applies filter on packages.
+ @see yumdb.jobs.YumFilterRepositories job for supported filter keys
+ """
+ return self._do_job(jobs.YumFilterRepositories(kind, **filters))
+
+ @cmpi_logging.trace_method
+ def set_repository_enabled(self, repo, enable):
+ """
+ Enable or disable repository.
+ @param enable is a boolean
+ """
+ return self._do_job(jobs.YumSetRepositoryEnabled(repo, enable))
+