]> git.decadent.org.uk Git - dak.git/commitdiff
update to 0.5 api
authorMark Hymers <mhy@debian.org>
Sat, 25 Apr 2009 14:43:31 +0000 (15:43 +0100)
committerMark Hymers <mhy@debian.org>
Sun, 9 Aug 2009 15:49:19 +0000 (16:49 +0100)
Signed-off-by: Mark Hymers <mhy@debian.org>
daklib/dbconn.py

index 3a11c2a1de531c11230f2638ddf3bee02d23e94e..d0f1389bd78e57250e0dd2a0c9e0bc10eea47814 100755 (executable)
@@ -139,6 +139,24 @@ def get_binary_from_id(id, session=None):
         return None
     return q.one()
 
+def get_binaries_from_name(package, session=None):
+    """
+    Returns list of Binary objects for given C{package} name
+
+    @type package: str
+    @param package: Binary package name to search for
+
+    @type session: Session
+    @param session: Optional SQL session object (a temporary one will be
+    generated if not supplied)
+
+    @rtype: list
+    @return: list of Binary objects for the given name (may be empty)
+    """
+    if session is None:
+        session = DBConn().session()
+    return session.query(Binary).filter_by(package=package).all()
+
 class Component(object):
     def __init__(self, *args, **kwargs):
         pass
@@ -357,6 +375,24 @@ class Source(object):
     def __repr__(self):
         return '<Source %s (%s)>' % (self.source, self.version)
 
+def get_sources_from_name(source, session=None):
+    """
+    Returns list of Source objects for given C{source} name
+
+    @type source: str
+    @param source: Source package name to search for
+
+    @type session: Session
+    @param session: Optional SQL session object (a temporary one will be
+    generated if not supplied)
+
+    @rtype: list
+    @return: list of Source objects for the given name (may be empty)
+    """
+    if session is None:
+        session = DBConn().session()
+    return session.query(Source).filter_by(source=source).all()
+
 def get_source_in_suite(source, suite, session=None):
     """
     Returns list of Source objects for a combination of C{source} and C{suite}.
@@ -684,7 +720,7 @@ class DBConn(Singleton):
         self.db_meta.bind = self.db_pg
         self.db_smaker = sessionmaker(bind=self.db_pg,
                                       autoflush=True,
-                                      transactional=True)
+                                      autocommit=True)
 
         self.__setuptables()
         self.__setupmappers()