summaryrefslogtreecommitdiffstats
path: root/pym/portage/repository
diff options
context:
space:
mode:
authorBrian Harring <ferringb@gmail.com>2011-08-31 17:29:58 -0700
committerZac Medico <zmedico@gentoo.org>2011-09-12 14:23:10 -0700
commitf908cddb505b81533861196c4713378e63dac1fa (patch)
tree5b457d169759dee1981a9cd44b52d875a8ea80eb /pym/portage/repository
parent53860ffa675b0cf1930589ff9fa15b5ffaa2cf75 (diff)
downloadportage-f908cddb505b81533861196c4713378e63dac1fa.tar.gz
portage-f908cddb505b81533861196c4713378e63dac1fa.tar.bz2
portage-f908cddb505b81533861196c4713378e63dac1fa.zip
Bind all manifest access through repoconfigs
This enables controling the behaviour (creation and validation) per repo, and while mildly ugly, refactors in the right direction.
Diffstat (limited to 'pym/portage/repository')
-rw-r--r--pym/portage/repository/config.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/pym/portage/repository/config.py b/pym/portage/repository/config.py
index 020297ce9..9e308a8dc 100644
--- a/pym/portage/repository/config.py
+++ b/pym/portage/repository/config.py
@@ -21,6 +21,7 @@ from portage.util import normalize_path, writemsg, writemsg_level, shlex_split
from portage.localization import _
from portage import _unicode_encode
from portage import _encodings
+from portage import manifest
_repo_name_sub_re = re.compile(r'[^\w-]')
@@ -41,7 +42,7 @@ class RepoConfig(object):
"""Stores config of one repository"""
__slots__ = ['aliases', 'eclass_overrides', 'eclass_locations', 'location', 'user_location', 'masters', 'main_repo',
- 'missing_repo_name', 'name', 'priority', 'sync', 'format']
+ 'missing_repo_name', 'name', 'priority', 'sync', 'format', 'load_manifest']
def __init__(self, name, repo_opts):
"""Build a RepoConfig with options in repo_opts
@@ -110,6 +111,7 @@ class RepoConfig(object):
missing = False
self.name = name
self.missing_repo_name = missing
+ self.load_manifest = manifest.Manifest
def update(self, new_repo):
"""Update repository with options in another RepoConfig"""
@@ -496,6 +498,9 @@ class RepoConfigLoader(object):
return None
return self.treemap[repo_name]
+ def get_repo_for_location(self, location):
+ return self.prepos[self.get_name_for_location(location)]
+
def __getitem__(self, repo_name):
return self.prepos[repo_name]