some minor fixes...

git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@1229 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2006-05-26 20:21:37 +00:00
parent 5f5a200ce1
commit c7fb96d549
2 changed files with 8 additions and 8 deletions

View file

@ -44,24 +44,24 @@ class Knowing(object):
del self._knowledge[obj] del self._knowledge[obj]
del obj._knowers[self] del obj._knowers[self]
def getMissingKnowledge(self, position): def getMissingKnowledge(self, profile):
knowledge = self.getKnowledge() knowledge = list(self.getKnowledge())
missing = [] missing = []
toCheck = [k for k in position.getRequirements() if k not in knowledge] toCheck = [k for k in profile.getRequirements() if k not in knowledge]
while toCheck: while toCheck:
k = toCheck.pop() k = toCheck.pop()
missing.insert(0, k) missing.insert(0, k)
for d in k.getDependencies(): for d in k.getDependencies():
if d in knowledge or k in toCheck: if d in knowledge or d in toCheck:
continue continue
if d in missing: if d in missing:
# TODO: rearrange missing, but care for cycles... # TODO: rearrange missing, but care for cycles...
continue continue
toCheck.append(d) toCheck.append(d)
return tuple(missing) return tuple(missing)
def getProvidersNeeded(self, position): def getProvidersNeeded(self, profile):
return ((k, k.getProviders()) return ((k, k.getProviders())
for k in self.getMissingKnowledge(position)) for k in self.getMissingKnowledge(profile))

View file

@ -40,7 +40,7 @@ class KnowledgeProvider(object):
self._providedKnowledge[obj] = True self._providedKnowledge[obj] = True
obj._providers.add(self) obj._providers.add(self)
def removeDependency(self, obj): def removeProvidedKnowledge(self, obj):
del self._providedKnowledge[obj] del self._providedKnowledge[obj]
del obj._providers[self] del obj._providers[self]