summaryrefslogtreecommitdiff
path: root/morphlib/sourcepool.py
diff options
context:
space:
mode:
authorJannis Pohlmann <jannis.pohlmann@codethink.co.uk>2012-04-17 13:35:06 +0100
committerJannis Pohlmann <jannis.pohlmann@codethink.co.uk>2012-04-17 13:35:30 +0100
commit75adcd50b5565b45e80688244521702bb6fa6c2a (patch)
tree752f59a2fab033d7ff4665f8b98d9ac15633230c /morphlib/sourcepool.py
parent9d00fd2ad6299cdfd6ac240b921ebaf48f698178 (diff)
downloadmorph-75adcd50b5565b45e80688244521702bb6fa6c2a.tar.gz
Add original_name member to CachedRepo. Use it for SourcePool lookups.
This is done to avoid a nasty mix of SourcePool lookups using CachedRepo objects (e.g. for strata within a system) versus lookups using repo names (e.g for sources within a stratum).
Diffstat (limited to 'morphlib/sourcepool.py')
-rw-r--r--morphlib/sourcepool.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/morphlib/sourcepool.py b/morphlib/sourcepool.py
index fe6bf9e9..0f144ef2 100644
--- a/morphlib/sourcepool.py
+++ b/morphlib/sourcepool.py
@@ -22,23 +22,25 @@ class SourcePool(object):
self._sources = {}
self._order = []
- def _key(self, repo, original_ref, filename):
- return (repo, original_ref, filename)
+ def _key(self, reponame, original_ref, filename):
+ return (reponame, original_ref, filename)
def add(self, source):
'''Add a source to the pool.'''
- key = self._key(source.repo, source.original_ref, source.filename)
+ key = self._key(source.repo.original_name,
+ source.original_ref,
+ source.filename)
self._sources[key] = source
self._order.append(source)
- def lookup(self, repo, original_ref, filename):
+ def lookup(self, reponame, original_ref, filename):
'''Find a source in the pool.
Raise KeyError if it is not found.
'''
- key = self._key(repo, original_ref, filename)
+ key = self._key(reponame, original_ref, filename)
return self._sources[key]
def __iter__(self):