summaryrefslogtreecommitdiff
path: root/patchtracker/models.py
diff options
context:
space:
mode:
authorSean Finney <seanius@debian.org>2010-05-13 19:36:31 +0200
committerSean Finney <seanius@debian.org>2010-05-13 19:36:31 +0200
commite3e23ba7197588bb98ea589f693f7fc59cc5eb2a (patch)
treed1df4aa677c085dff078f6e2807a769b736d5eec /patchtracker/models.py
parent01e55d8e6ca532ceb1382db529f82941bc7a6bad (diff)
downloadpatch-tracker-e3e23ba7197588bb98ea589f693f7fc59cc5eb2a.tar.gz
commonize all the diffhandler stuff into the SourcePackage model
Diffstat (limited to 'patchtracker/models.py')
-rw-r--r--patchtracker/models.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/patchtracker/models.py b/patchtracker/models.py
index 95a59df..3d4f582 100644
--- a/patchtracker/models.py
+++ b/patchtracker/models.py
@@ -1,5 +1,9 @@
+import os
import re
+import Conf
+import DiffGzHandler, DebTarHandler
+
from django.db import models
from django.contrib import admin
@@ -24,6 +28,15 @@ class SourcePackage (models.Model):
else:
return "Native"
+ def diffhandler( self ):
+ """ Return a diffhandler object too the caller """
+ if self.diffgz_name:
+ dgz = os.sep.join([Conf.archive_root, self.loc, self.diffgz_name])
+ return DiffGzHandler.DiffGzHandler(dgz)
+ elif self.debtar_name:
+ dtar = os.sep.join([Conf.archive_root, self.loc, self.debtar_name])
+ return DebTarHandler.DebTarHandler(dtar)
+
def anchor_name(self):
""" output a version of the package name suitable for use as an
anchor name (i.e. <a name="foo">) """