forked from importers/git-importer
23 lines
859 B
Python
23 lines
859 B
Python
|
class DBRevision:
|
||
|
|
||
|
def __init__(self, row):
|
||
|
(self.dbid, self.project, self.package, self.rev, self.unexpanded_srcmd5, self.commit_time, self.userid, self.comment, self.requestid) = row
|
||
|
|
||
|
@classmethod
|
||
|
def fetch_revision(cls, db, project, package, rev):
|
||
|
cur = db.cursor()
|
||
|
cur.execute("SELECT * FROM revisions where project=%s and package=%s and rev=%s", (project, package, rev))
|
||
|
row = cur.fetchone()
|
||
|
cur.close()
|
||
|
return DBRevision(row)
|
||
|
|
||
|
@classmethod
|
||
|
def latest_revision(cls, db, project, package):
|
||
|
cur = db.cursor()
|
||
|
cur.execute("SELECT MAX(rev) FROM revisions where project=%s and package=%s", (project, package))
|
||
|
max = cur.fetchone()[0]
|
||
|
cur.close()
|
||
|
if max:
|
||
|
return DBRevision.fetch_revision(db, project, package, int(max))
|
||
|
return None
|