summaryrefslogtreecommitdiff
path: root/patchtracker/SourceArchive.py
diff options
context:
space:
mode:
authorSean Finney <seanius@debian.org>2008-06-26 01:55:58 +0200
committerSean Finney <seanius@debian.org>2008-06-26 01:55:58 +0200
commitbb37cf116269d5948d7f4d592557642696b5d9c7 (patch)
tree279809d4fd86e92043e5f8b70dbf2d502d902678 /patchtracker/SourceArchive.py
parentd08d138655cce56e9e10c4afbc01ccf4eb55a69e (diff)
downloadpatch-tracker-bb37cf116269d5948d7f4d592557642696b5d9c7.tar.gz
package search / versionless implementation
going to /packages/pkg now gives a table of contents with the available versions for the package, or the results of a widers search in the case of no exact matches also removed a bunch of dead code from DB mostly
Diffstat (limited to 'patchtracker/SourceArchive.py')
-rwxr-xr-xpatchtracker/SourceArchive.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/patchtracker/SourceArchive.py b/patchtracker/SourceArchive.py
index b8bc9eb..a30e07d 100755
--- a/patchtracker/SourceArchive.py
+++ b/patchtracker/SourceArchive.py
@@ -131,8 +131,20 @@ class SourcePackageIndex:
if not self.pkgs[srcpkg.idx][srcpkg.name].has_key(rel):
self.pkgs[srcpkg.idx][srcpkg.name][rel] = srcpkg
+ def size(self):
+ return sum([len(self.pkgs[i]) for i in self.pkgs.iterkeys()])
+
+ def getpackage(self, name):
+ try:
+ return self.getletter(name)[name]
+ except KeyError:
+ return None
+
def getletter(self, letter):
- return self.pkgs[getidx(letter)]
+ try:
+ return self.pkgs[getidx(letter)]
+ except KeyError:
+ return None
def indices(self):
return sorted(self.pkgs.iterkeys())