[dak/master] add methods for easily finding suites for src/bin packages
Signed-off-by: Mark Hymers <mhy@debian.org>
---
daklib/dbconn.py | 36 ++++++++++++++++++++++++++++++++++++
1 files changed, 36 insertions(+), 0 deletions(-)
diff --git a/daklib/dbconn.py b/daklib/dbconn.py
index 66921b8..7d46076 100755
--- a/daklib/dbconn.py
+++ b/daklib/dbconn.py
@@ -171,6 +171,24 @@ class DBBinary(object):
__all__.append('DBBinary')
+def get_suites_binary_in(package, session=None):
+ """
+ Returns list of Suite objects which given C{package} name is in
+
+ @type source: str
+ @param source: DBBinary package name to search for
+
+ @rtype: list
+ @return: list of Suite objects for the given package
+ """
+
+ if session is None:
+ session = DBConn().session()
+
+ return session.query(Suite).join(BinAssociation).join(DBBinary).filter_by(package=package).all()
+
+__all__.append('get_suites_binary_in')
+
def get_binary_from_id(id, session=None):
"""
Returns DBBinary object for given C{id}
@@ -1288,6 +1306,24 @@ def source_exists(source, source_version, suites = ["any"], session=None):
__all__.append('source_exists')
+def get_suites_source_in(source, session=None):
+ """
+ Returns list of Suite objects which given C{source} name is in
+
+ @type source: str
+ @param source: DBSource package name to search for
+
+ @rtype: list
+ @return: list of Suite objects for the given source
+ """
+
+ if session is None:
+ session = DBConn().session()
+
+ return session.query(Suite).join(SrcAssociation).join(DBSource).filter_by(source=source).all()
+
+__all__.append('get_suites_source_in')
+
def get_sources_from_name(source, version=None, dm_upload_allowed=None, session=None):
"""
Returns list of DBSource objects for given C{source} name and other parameters
--
1.5.6.5
Reply to: