コード例 #1
0
 def add_changeset(self, rev, message, author, date, changes=()):
     if rev is None:
         rev = self.last_rev = self.last_rev + 1
     changeset = Changeset(self, str(rev), message, author, date)
     changeset.get_changes = lambda: changes
     self.changesets[changeset.rev] = changeset
     self.revisions.append(changeset.rev)
     return str(rev)
コード例 #2
0
ファイル: cache.py プロジェクト: wiraqutra/photrackjp
 def do_sync(db):
     cursor = db.cursor()
     cursor.execute(
         """
         SELECT time,author,message FROM revision
         WHERE repos=%s AND rev=%s
         """, (self.id, srev))
     for time, author, message in cursor:
         old_cset[0] = Changeset(self.repos, cset.rev, message, author,
                                 from_utimestamp(time))
     cursor.execute(
         """
         UPDATE revision SET time=%s, author=%s, message=%s
         WHERE repos=%s AND rev=%s
         """, (to_utimestamp(
             cset.date), cset.author, cset.message, self.id, srev))
コード例 #3
0
    def sync_changeset(self, rev):
        cset = self.repos.get_changeset(rev)
        srev = self.db_rev(cset.rev)
        old_cset = None

        with self.env.db_transaction as db:
            for time, author, message in db(
                    """
                    SELECT time, author, message FROM revision
                    WHERE repos=%s AND rev=%s
                    """, (self.id, srev)):
                old_cset = Changeset(self.repos, cset.rev, message, author,
                                     from_utimestamp(time))
            if old_cset:
                db(
                    """UPDATE revision SET time=%s, author=%s, message=%s
                      WHERE repos=%s AND rev=%s
                      """, (to_utimestamp(
                        cset.date), cset.author, cset.message, self.id, srev))
            else:
                self._insert_changeset(db, rev, cset)
        return old_cset