return rValue
class portagetree:
- def __init__(self, root="/", virtual=None, clone=None, settings=None, portroot=None):
+ def __init__(self, root="/", virtual=None, clone=None, settings=None):
"""
Constructor for a PortageTree
- Note: Portroot was added for GLEP 42 functionality and defaults to the $PORTDIR
- env variable.
-
@param root: ${ROOT}, defaults to '/', see make.conf(5)
@type root: String/Path
@param virtual: UNUSED
[os.path.realpath(t) for t in self.mysettings["PORTDIR_OVERLAY"].split()]
self.treemap = {}
for path in self.porttrees:
- try:
- repo_name = open( os.path.join( path , REPO_NAME_LOC ) ,'r').readline().rstrip()
- self.treemap[repo_name] = path
- except (OSError,IOError):
- pass
+ repo_name_path = os.path.join( path, REPO_NAME_LOC )
+ if os.path.exists( repo_name_path ):
+ try:
+ repo_name = open( repo_name_path ,'r').readline().strip()
+ self.treemap[repo_name] = path
+ except (OSError,IOError):
+ pass
self.auxdbmodule = self.mysettings.load_best_module("portdbapi.auxdbmodule")
self.auxdb = {}
#will never match
if not line.startswith("D"):
continue
- match = _installedRE.match( line )
- if match:
- self.restrictions.append(
- DisplayInstalledRestriction( match.groups()[0].strip().rstrip() ) )
- continue
- match = _profileRE.match( line )
- if match:
- self.restrictions.append(
- DisplayProfileRestriction( match.groups()[0].strip().rstrip() ) )
- continue
- match = _keywordRE.match( line )
- if match:
- self.restrictions.append(
- DisplayKeywordRestriction( match.groups()[0].strip().rstrip() ) )
- continue
+ restricts = { _installedRE : DisplayInstalledRestriction,
+ _profileRE : DisplayProfileRestriction,
+ _keywordRE : DisplayKeywordRestriction }
+ for regex, restriction in restricts.iteritems():
+ match = regex.match(line)
+ if match:
+ self.restrictions.append( restriction( match.groups()[0].strip() ) )
+ continue
self._parsed = True
def __getattr__( self, attr ):